删除字符串中的间距和小数
Remove spacing and decimals from a string
首先,它必须与所有现代浏览器兼容(因为它在移动设备上使用)。我想做什么?
好吧,我有一个元标记,我必须检查,因为人们在DOM中写它的方式不同。
下面是我的例子。如果间距和小数存在,我需要删除它们。
<meta name="viewport" content="width=device-width, initial-scale=1.0, maximum-scale=1.0, user-scalable=no">
所以我得到了元的内容:
var getViewport = document.querySelector('meta[name=viewport]');
var check = getViewport.getAttribute('content');
console.log(check); // output: width=device-width, initial-scale=1.0, maximum-scale=1.0, user-scalable=no
我甚至无法修剪它。我尝试了一些修剪功能,如:
el.replace(/^'s's*/, '').replace(/'s's*$/, '');
但在这种特殊情况下,它没有任何作用。
我需要比较内容是否匹配,否则我会用合适的内容替换它。人们用很多种方式写它,所以我不想比较每种可能的方式,而是让它看起来都一样,所以如果存在,那么它将与我上面的例子相同。
width=device-width, initial-scale=1, maximum-scale=1, user-scalable=no
width=device-width, initial-scale=1.0, maximum-scale=1.0, user-scalable=no
width=device-width,initial-scale=1,maximum-scale=1,user-scalable=no
width=device-width,initial-scale=1.0,maximum-scale=1.0,user-scalable=no
他们也可以故意或意外地在某些地方添加一些间距和删除其他间距。。。如果你理解我想说的话。由于打字速度快和语法问题,这可能需要一些编辑。
最重要的是,有人能教我如何修剪、删除"var check"
中的小数吗?这样,如果存在任何情况,都会匹配这种类型的字符串:width=device-width,initial-scale=1,maximum-scale=1,user-scalable=no
如果您想允许参数的"任意顺序",还可以使用另一种更全面的方法。
删除".0",在逗号上拆分,修剪空格,对列表进行排序,然后重新连接。
例如:
check = check.replace(/'.0*'b/g, "").split(/'s*,'s*/g).sort().join(",");
这将允许以下内容匹配:
width=device-width, initial-scale=1, maximum-scale=1, user-scalable=no
user-scalable=no,maximum-scale=1.0,initial-scale=1.0,width=device-width
看到它在行动吗?JS Bin
您需要一个正则表达式来删除所有空格和所有".0"
check = check.replace(/('s+|'.0*'b)/g, "")
首先对其进行规范化:
var your_string = 'width=device-width, initial-scale=1, maximum-scale=1, user-scalable=no';
var your_comparison_string = your_string.replace(/'s/g,'');
之后,您可以搜索任何浮点数。在这种情况下,搜索那些有点的就足够了,因为你会规范那些没有:
var search = your_comparison_string.match(/'d'.'d/g);
for (var i in search) {
your_comparison_string = your_comparison_string.replace(search[i], parseInt(search[i]));
}
相关文章:
- 如何在JavaScript中将字符串转换为函数引用
- jQuery中是否内置了任何字符串格式化函数
- 货币代码为欧元-金额的格式不应包含小数
- 在数字字符串的最后两个数字上加上小数
- 从数组/字符串中删除所有小数和单个数字
- 计算字符串中的句子数,同时在 JavaScript 中考虑小数
- 如何使用 Angular “数字”过滤器键入时在输入字段中设置带有千和小数分隔符的字符串格式
- Javascript:如何检索*字符串*数字的小数位数
- 将字符串转换为浮点数,最多 2 位小数
- 有没有一种方法可以在模板字符串中四舍五入到2位小数
- 舍入javascript字符串并显示不带小数的美元格式
- 在JavaScript中将字符串中的负数转换为负小数
- 删除字符串中的间距和小数
- 正则表达式提取字符串中第一个带小数的数字
- Regex格式字符串数字与逗号和2个小数在javascript
- 字符串计算的小数
- 用于替换字符串中小数后不重要的零的正则表达式模式
- 向字符串添加一个小数
- 如何使用javascript从带有小数的字符串中提取数字
- 如何检查字符串是否为正整数,允许0和全0小数