【发布时间】:2013-02-10 12:38:26
【问题描述】:
这是一个有趣的问题——我正在寻找一种 JavaScript 正则表达式解决方案来从字符串中提取不同的部分。非常感谢任何输入。
示例 -
";1XYZ123_UK;1;2.3;evt14=0.0|evt87=0.0,;1XYZ456_UK;4;5.6;evt14=0.0;fly;0;0;;;"
我试图从字符串中提取这些位,忽略其余部分-
“1XYZ123_UK;2;3;1XYZ456_UK;4;5.6;”
基本上提取以 1XYZ 开头的任何内容,直到遇到 'evt'。
【问题讨论】:
-
总是以 1XY.. 开头吗?
-
";1XYZ123_UK;1;2.3;evt14=0.0|evt87=0.0,;1XYZ456_UK;4;5.6;evt14=0.0".replace(/evt\d+=\d+\.\d+/ g, '') 将返回 ";1XYZ123_UK;1;2.3;|,;1XYZ456_UK;4;5.6;"
-
Lloyd - 是的,它总是以 1XYZ 开头,但它可以在字符串中的任何位置。谢谢。
-
如果有趣,你一定要尝试一下,不是吗?
-
Felix - 我做到了,test.match(/^(((?!evt).)*)((?=1XYZ).)*/g)。需要不同的解决方案来了解我可以改进的地方。
标签: javascript regex match regex-negation