捕获可选组正则表达式 Php

尽管

我几乎有完整的正则表达式,但是,有一种情况我无法匹配。

我需要捕获: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 匹配?任何帮助,将不胜感激

[ https://regex101.com/r/morihH/1][1]

维克多·斯特里比尤夫

您可以将可选的空格和 a 添加(到第一个可选的非捕获组:

(?:(\w+)\s*\(?)?\b(\d+)\s?x\s?(\d+)\s?(cm)\b
        ^^^^^^

请参阅正则表达式演示\s用空格替换,因为输入字符串是多行字符串)。

\s*\(?空格后跟一个可选的比赛0+ (

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章