使用正则表达式拆分字符串值
Posted
技术标签:
【中文标题】使用正则表达式拆分字符串值【英文标题】:Splitting String Value Using Regex 【发布时间】:2014-08-21 01:38:44 【问题描述】:我有一个如下的输入字符串值,并想拆分非数字文字,如空格、字符、换行符、逗号、句点、斜杠、反斜杠等。
例如我的输入值是:
var list =
'123
456 789
1234..5678//999
123aaa456'
我希望输出值为:123、456、789、1234、5678、999、123、456
我尝试使用下面的正则表达式对其进行拆分,但它一直停在第二个数字上...
var split= list.split(/[\s\t.,;:]+/);
谁能帮帮我?提前致谢。
【问题讨论】:
/\D+/
=== 非数字
【参考方案1】:
使用\D
匹配任何非数字字符,或使用\D+
匹配一个或多个此类字符:
var split = list.split(/\D+/);
你说:
我尝试使用下面的正则表达式对其进行拆分,但它一直停在第二个数字上...
var split= list.split(/[\s\t.,;:]+/);
我看不出它怎么会停在第二个数字上:该正则表达式会产生输出 ["123", "456", "789", "1234", "5678//999", "123aaa456"]
,因为您的模式不包括正斜杠或字母。
【讨论】:
谢谢你这工作。由于某种原因,我正在处理的页面上没有正确加载 javascript,因此返回了错误的结果..以上是关于使用正则表达式拆分字符串值的主要内容,如果未能解决你的问题,请参考以下文章