我想从单个正则表达式中提取ID和名称,但我无法获得正确的响应
<a href="/profiles/6635/Name"
我在正则表达式下面使用了
<a href="/profiles/(.*?)/(.*?)"
答案 0 :(得分:0)
按照@WiktorStribiżew的建议,您应将正则表达式固定为
<a href="/profiles/([^/]+)/([^/]+)"
但是也可以使用$1$
和$2$
在“模板”字段中获取两个值,例如
$1$$2$
将保存为变量串联值-6635Name
答案 1 :(得分:0)
您使用的<a href="/profiles/(.*?)/(.*?)"
可以从ID
捕获name
和<a href="/profiles/6635/Name"
,因为您使用的一种懒惰方式(非贪婪)(.*?)
可以匹配仅在profiles/
和第二个/
之间,就像使用[^\/]+
,然后在/
和"
之间一样,因此,请再次检查是否正确。
您可能需要像这样/
那样逃避\/
,因此,请将其更改为:
<a href="\/profiles\/(.*?)\/(.*?)"
这是您在DEMO上的相同正则表达式
如果您需要确保使用Java测试器,请使用以下工具:Java regex tester