我正在试图找出它的作用,以及如何改变它。
preg_replace('/[^\w\s]/','',$var);
我认为这会替换所有符号(基本上删除它们)。如果我想允许某些特定符号怎么办?我在这里做了什么改变?
例如我想要替换所有内容除了:
感谢。
答案 0 :(得分:2)
^
表示除此之外的所有内容,因此除了单词字符(\w
)和空格(\s
)之外的其他所有内容。
要替换除了您提到的字符以外的所有内容,请使用:
preg_replace('/[^\w\s\/]/', '', $var);
\/
是/
的转义版本。
答案 1 :(得分:1)
基本上是: “找到不是单词字符或空格字符的所有内容,并将其从字符串中删除”
^是一个否定,所以你可以在[]之后放入你想要的任何东西,它会跳过那些。除了/
之外,它已经做了你想要的一切注意:\ w是[0-9A-Za-z_]的简写(或接近它。)
来自perl.org
\ w是单词字符(字母数字或)并表示 [0-9A-ZA-Z