我有一个像这样的数组,我想剥离所有字母字符。
$testString = Array ([0] => 46_xsdfdsa_ddasdasd [1] => 23423_wrwerwer_ajbfdahbfkahflagassl);
echo preg_replace("/[^0-9,.]/", "", $testString);输出应为46,23423。
我在上面试过了,但不起作用。
提前感谢
发布于 2012-02-23 15:31:32
这应该是可行的:
echo preg_replace("/[a-zA-Z0-9]/", "", $testString);仅供参考,字母数字表示字母+数字字符。从你的问题标题看,你似乎想要把它们全部替换掉。让我们知道这对你是否有效。
如果在输出中你只想要数字,,.,你可以这样做:
echo preg_replace("/[^\d,.]/", "", $testString);示例:
$str = '23,423_.wrwerwer_ajbfdahbfkahflagassl';
echo preg_replace("/[^\d]/", "", $str); // result: 23,423.Working Example
发布于 2012-02-23 15:36:25
这对我很管用
$testString = array(0 => '46_xsdfdsa_ddasdasd', 1 => '23423_wrwerwer_ajbfdahbfkahflagassl');
echo join(",",preg_replace("/[^0-9,.]/", "", $testString));您拥有的regexp可以工作--您只需要将结果连接起来即可。
发布于 2012-02-23 15:36:33
$array = preg_replace("/[^0-9,.]/", "", $testString);
$string = implode(",", $array);如果将数组传递给preg_replace,它将返回数组而不是字符串,因此需要内爆数据以将其转换为字符串
https://stackoverflow.com/questions/9408808
复制相似问题