-1

我正在努力寻找解决方案,使用 preg_match_all 从以下文本中仅获取值和测量值 untis ,前文本

MAN CAB HDMI TO HDMI M/M 18 cm SHIELDED 1.3V BLK 
MAN CAB HDMI TO HDMI M/M SHIELDED 1.3V BLK 18cm
MAN CAB HDMI TO HDMI M/M SHIELDED 1.3V BLK 5M
MAN CAB HDMI TO HDMI 5 M M/M SHIELDED 1.3V BLK 
MAN CAB HDMI TO HDMI M/M SHIELDED 1.3V BLK 5.0 m
MAN CAB HDMI TO HDMI M/M SHIELDED 1.3V BLK 5.2m
MAN CAB HDMI TO HDMI 5,2m M/M SHIELDED 1.3V BLK  
MAN CAB HDMI TO HDMI M/M 5,2 m SHIELDED 1.3V BLK 

想得到结果

18 cm,18cm,5M,5 M,5.00 M,5.0 mm,5.2m and 5,2m
4

2 回答 2

1

像这样的东西应该工作:

preg_match_all("/[0-9,.]+\s*(cm|m|mm)/mis", $string);

这些mis标志使正则表达式不区分大小写,并允许匹配换行符。

于 2012-11-01T16:39:40.697 回答
0

怎么样:

preg_match_all('/([0-9,\.]+\s?(cm|mm|m))/mis', $string, $matches);
于 2012-11-01T16:44:17.590 回答