-1
$string='A;B;C;1;2-;D'

我怎样才能从上面的字符串中删除所有字符,但保留字母和“;”

4

3 回答 3

4

试试这个简单的正则表达式:

preg_replace('/[^A-Z;]+/', '', $string);

或者

 preg_replace('/[^A-Z;]+/i', '', $string);

如果您需要不区分大小写。

于 2013-10-08T09:40:56.670 回答
3

您可以使用:

 $repl = preg_replace('/[^a-z;]+/i', '', $str);

^a-z;方括号内(字符类)表示匹配除英文字母a-z(范围)或分号之外的任何内容;

/i用于忽略大小写以避免匹配大写/小写英文字母。

于 2013-10-08T09:41:11.767 回答
2

尝试这个

 preg_match('/[^a-z;]/i', $string);
于 2013-10-08T09:41:54.333 回答