我不能让这个正则表达式与PHP一起使用,特别是中间的空格,值或单位匹配组将分别匹配。
正则表达式:
/(?<value>\d+\.?\d*)(\p{Z}|\s)(?<unit>(meters|mm))/
要解析的字符串:
Cord Length:1.52 meters
尝试http://www.phpliveregex.com/它不匹配。
http://www.phpliveregex.com/p/bV7
试试https://regex101.com/它运作正常
编辑:我似乎仍然没有在phpliveregex.com上工作
http://www.phpliveregex.com/p/bV7
EDIT2:我已经编辑了要解析的字符串。
答案 0 :(得分:3)
除了上述评论之外,我还会修改你的正则表达式,如下所示:
(?<value>\d+(?:\.\d+)?)\h+(?<unit>(?:meters|mm))