正则表达式查找特定字符串后的数字

问题描述:

我正在寻找正则表达式来选择特定字符串后的数字。我已经找到了正面的语法背后,但这不支持在JavaScript中。正则表达式查找特定字符串后的数字

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

此正则表达式为我提供了正确的结果,但使用正面看后面和JS不支持:

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

我想正则表达式选择“1234”,但没有别的。它也必须只适用于特定的网址,而不能使用其他网址。

谢谢!

当然可以使用JS支持的负向预览。

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

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

+0

与您建议的正则表达式的问题它会捕获其字符串“1234” 拥有。我需要一个只能在指定的URL之后直接捕获数字的数字。 – Nico

+0

@Avocado我不明白。你要求匹配'1234',我给了你一个答案吗? –

+0

问题是,它接受任何URL后面的“1234”。这是一个演示:https://regex101.com/r/hEU3tV/3 – Nico

不排除模式可以使用: -

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