java Regexp查找带条件的子字符串
我尝试编写regexp来查找字符串中带有减号的数字
- 这个数字在开始或结束数字上有一个负号(-)李>
- 此子字符串可以以空格开头或/和结尾,也可以以字符串开头或结尾李>
- 另一个字符串可以包含此子字符串,但没有空格,需要排除此字符串
regexp应该匹配这些字符串
abc ghhkjl -123 123- gfdhs kljf fdsg -123 fdjol jklp 123- ljfds -123 123-
regexp不应与这些字符串匹配
abc ghhkjl-123 123-gfdhs kljf fdsg -123fdjol jklp123- ljfds
我的regexp是的
(?:^|\W|\w+\s)\d+(?:$|\W|\s\w+)
请帮忙
# 1 楼答案
听起来你可以用lookarounds来强制被空格包围,开始或结束
See this demo at regex101
上面的
\S
匹配的字符不是空格(对\s
的否定)