我几乎有完整的正则表达式,但是,有一种情况我无法匹配。
我需要捕获:xxxx 字(如果存在)、小数 (30) 和“cm”。
我有这样的表达:
30x30cm
30 x 30 厘米
30x30 厘米
xxxx 30x30cm
xxxx (30x30cm) -> 那个案例与 xxxx 这个词不匹配(如果存在我需要捕获)
xxxx (30 x 30 cm)->那个案例与xxxx这个词不匹配(如果存在我需要捕获)
这就是我现在的正则表达式:
(?:(\w+))?\s?\b(\d+)\s?x\s?(\d+)\s?(cm)\b
如果存在,我如何与单词 xxxx 匹配?任何帮助,将不胜感激
您可以将可选的空格和 a 添加(
到第一个可选的非捕获组:
(?:(\w+)\s*\(?)?\b(\d+)\s?x\s?(\d+)\s?(cm)\b
^^^^^^
请参阅正则表达式演示(\s
用空格替换,因为输入字符串是多行字符串)。
该\s*\(?
空格后跟一个可选的比赛0+ (
。
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句