java无法获得第一个匹配项(与组无关)
我需要为字符串"Abcd 23 p. 421 fd."
获取匹配"Abcd"
。我编写了模式"^(.*)\s+\d"
,但它返回与最后一个数字匹配的结果,如"Abcd 23 p. 42"
。如何获得第一个数字匹配
另外,我读了this解,但不明白。如何使用|
子表达式使模式非贪婪
你可以在下面搜索框中键入要查询的问题!
我需要为字符串"Abcd 23 p. 421 fd."
获取匹配"Abcd"
。我编写了模式"^(.*)\s+\d"
,但它返回与最后一个数字匹配的结果,如"Abcd 23 p. 42"
。如何获得第一个数字匹配
另外,我读了this解,但不明白。如何使用|
子表达式使模式非贪婪
# 1 楼答案
尝试在正则表达式中使用
\D
非数字而不是.
:编辑:因为您只需要第一个单词(不需要数字和空格),所以可以使用以下较短的正则表达式: