php preg_replace没有像预期的那样工作

时间:2011-11-26 20:32:32

标签: php regex preg-replace

我有以下代码:

<?php
    $test = "xxxx..AAA?!";
    echo $test."\n";
    $test = preg_replace("[^a-zA-Z0-9-]", "", $test);
    echo $test."\n";
?>

我想删除所有不是字母,数字或减号的字符

我的错误是什么?

1 个答案:

答案 0 :(得分:4)

缺少

分隔符

$test = preg_replace('/[^a-zA-Z0-9-]/', '', $test); 
echo $test . "\n";

此外,我建议使用PHP_EOL代替"\n"来换行字符。