嘿我正在过滤一个字符串并希望它来自:
512MBGDDR5videogeheugen
要:
512MB
所以我尝试了php preg replace并做了这个:
$filterString = preg_replace("/[^0-9]+(KB|MB|GB)/", "", $string);
有谁知道解决这个问题的方法? 感谢回应!
答案 0 :(得分:4)
而不是替换你可以得到这样的匹配。
preg_match("/^([0-9]+(KB|MB|GB))/", $string, $results);
$filterString = $results[0];
答案 1 :(得分:0)
您还可以使用具有T-Regx library的automatic delimiters:
pattern('^[0-9]+(KB|MB|GB)')->match($string)->all();
答案 2 :(得分:-1)
我实际上不在家,所以我尝试了一个javascript正则表达式,但我认为它应该可行:
$filtered = preg_replace('^([0-9]+(KB|MB|GB))(.+)$','$1',$string)