正则表达式在特定字符串后找到数字

时间:2017-02-17 15:25:29

标签: regex

我正在寻找正则表达式来选择特定字符串后面的数字。我发现了语法背后的正面看法,但javascript中不支持。

这是我的例子: /测试/人/创建?PERSONID = 1234

这个正则表达式为我提供了正确的结果,但是使用了积极的外观并且JS不支持

(?<=\/Test\/person\/create\?personId=)(\d+)

我希望正则表达式选择&#34; 1234&#34;但没有别的。它也必须只与特定网址一起使用,而不是其他网址。

谢谢!

2 个答案:

答案 0 :(得分:1)

如果没有否定的预测,您可以使用: -

'/Test/person/create?personId=1234'.match(/\/Test\/person\/create\?personId=(\d+)/)[1]

答案 1 :(得分:0)

当然,你可以使用JS支持的负向前瞻。

正则表达式:(?!\/Test\/person\/create\?personId=)1234
搜索:/Test/person/create?personId=1234
匹配:1234

演示:https://regex101.com/r/hEU3tV/1