[英]Javascript REGEX - Tricky Expression
我整日都在努力寻找解决办法,以解决似乎难以处理的正则表达式表达式。 开始了:
NAME=JOHN,SMITH
我要选择“ JOHN”和“ SMITH”(而不是逗号或等号)
换句话说,我希望表达式在等号之后选择LETTERS(而本身不包括等号),而不考虑字母/单词是否被逗号分隔。 恐怕我无法更改格式。
谢谢。 我正在使用JavaScript。
编辑:到目前为止,这是我设法整理的。 /=(\\D[^=\\n,]+)/g
但是,这仍然会选择等号,并且不会添加逗号后面可能出现的任何其他单词。
我要选择“ JOHN”和“ SMITH”
用这个 :
'NAME=JOHN,SMITH'.match(/\=(\w+),?(\w+)/)
结果将在数组的第二和第三个索引上:
["=JOHN,SMITH", "JOHN", "SMITH"]
您可以执行以下操作:
/\w+(?!.*=)/g
这将导致否定的前瞻,意味着您需要一个单词:\\ w +,该单词不能在任意数量的字符之前加上加号=。
然后,全局变量将为您提供多个匹配项(逗号除外)。 我相信这就是您要找的东西? 您不会有任何比赛分组,但是我认为到目前为止您所需要的都不需要。
这样可以吗
var str = 'NAME=JOHN,SMITH';
str = str.replace(/NAME\=([A-Z]+?)\,([A-Z]+?)/g,'$1 $2');
alert(str);
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.