除a-z
(大写)和下划线_
外,如何从字符串中删除所有字符?
答案 0 :(得分:8)
正则表达式怎么样?
$output = preg_replace('#[^a-zA-Z_]#', '', $input);
这将使用空字符串替换与表达式匹配的所有内容。
[]是一组符号,组开头的^表示:该组包含之后未提及的每个字符。所以它包含的不是a-z或A-Z或下划线。
答案 1 :(得分:1)
详细了解regular expressions。试试这个
$string = preg_replace('/[^a-z_]/', '', $string);
答案 2 :(得分:1)
您可以使用preg_replace
功能:
$string = 'Text& with* ch@racters that get# removed, but_not_underscore.';
echo preg_replace( '/[^A-Za-z_]/', '', $string );