我已经有一个正确匹配的正则表达式(?:[a-zA-Z\d]+(?:[/][a-zA-Z\d]+)+)
:
cb / 09/06233 / full 13/02513 / MAJOR ADA / 333
但匹配不正确
工业/仓库
如何更新我的正则表达式以排除没有数字的短语?
我尝试(?=\d)
在内部添加某处,但没有任何效果。
答案 0 :(得分:2)
您可以使用正向前行(?=[^\d\s]*\d)
来断定右边的内容不是空格字符或数字。
为此,您可以使用字符类[^\d\s]*
来不匹配数字或空格字符,并使用量词来重复该0+次。然后匹配一个数字\d
。
(?=[^\d\s]*\d)(?:[a-zA-Z\d]+(?:/[a-zA-Z\d]+)+)