正则表达式获取任何类型的所有数字
Regex to get all numbers of any type
我有这样的字符串:
"1 -2 -0.00529366960223319 -1.72662226752857E-5 一些文本"
我想将数字解析为一个数组,使用 javascript 删除文本以返回以下内容:
[1, -2, -0.00529366960223319, -1.72662226752857E-5]
我尝试了很多表达方式,如下所示:
/[-+]?[0-9]*.?[0-9]+([eE][-+]?[0-9]+)?/
没有成功,有什么帮助吗?
提前感谢!
你不需要正则表达式:
function isNumeric(n) { /* http://stackoverflow.com/a/1830844/1529630 */
return !isNaN(parseFloat(n)) && isFinite(n);
}
var str = "1 -2 -0.00529366960223319 -1.72662226752857E-5 some text",
arr = str.split(" ").filter(isNumeric).map(Number);
您可以使用此正则表达式: /[-+]?'d*'.?'d+([eE][-+]?'d+)?/g
你快到了。
请记住,如果您真的想要它,请逃离所有特殊标志,例如.
,或者它将与任何角色匹配。
正则表达式末尾的g
启用全局匹配。
var src = "+1 -2 -0.00529366960223319 -1.72662226752857E-5 some text 25e46";
var reg = /[-+]?'d*'.?'d+([eE][-+]?'d+)?/g;
res = src.match(reg);
// The matches are in elements 0 through n.
for (var i = 0; i < res.length; i++) {
document.body.innerHTML += "submatch " + i + ": " + res[i] + "<br/>";
}
相关文章:
- javascript上的数字类型模拟
- 访问数字类型的未定义属性
- 如何获取输入数字类型的值
- 循环遍历具有数字类型的输入
- 应用于数字类型的 ToString
- JavaScript数字类型对货币操作的安全性如何
- html5数字类型只接受正整数
- 隐藏空输入的零值(数字类型)
- 可编辑的数字类型未定义
- clear()函数对数字类型的输入不起作用
- 新的webkit在数字类型输入中将十进制逗号转换为~ dot,反之亦然.该浏览器特性的Javascript名称
- 如何设置数字类型文本框的最大字符数
- 检查字符串/数字类型的字段是否为空
- 这个数字类型是什么?
- 如何将数量类型更改为数字类型以在javascript中执行算术运算
- Javascript字符串到数字类型强制转换
- 防止用户在数字类型的输入元素中输入负数
- Regex从数字类型输入中替换
- 输入数字类型美元符号
- 数字类型错误与猫鼬模型