我需要从两个不同的字符串中提取数字后的数字和单位..有些字符串在数字和单位之间有这样的空格,150 g
而其他字符串则没有150g
$text = 'Rexona Ap Deo Aerosol 150ml Active CPD-05923';
$text='Cutex Nail Polish Remover Moisture 100ml ';
preg_match_all('!\d+!', $text, $matches);
if(sizeof($matches[0]) > 1){
// how can I extract 'ml'
}
else {
// how can I extract 150 ml ?
}
你们能帮忙吗?
您可以使用:
preg_match_all('~\b(\d+(?:\.\d{1,2})?)\s*(ml|gm?|kg|cm)\b~i', $text, $matches);
并使用匹配的组#1和#2。
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句