正则表达式来删除除字母数字和某些标点符号的所有字符
我用这个干净的字符串:正则表达式来删除除字母数字和某些标点符号的所有字符
$clean = preg_replace("/[^a-zA-Z0-9\/_.;|+ -]/", '', $str);
作品不错,但我需要添加到正则表达式的字符“&”也一样,我试图添加:
$clean = preg_replace("/[^a-zA-Z0-9\/_.;&|+ -]/", '', $str);
或
$clean = preg_replace("/[^a-zA-Z0-9\/_.;\&|+ -]/", '', $str);
但这不起作用,为什么呢? 我该怎么办? 非常感谢。
我想你的模式$clean = preg_replace("/[^a-zA-Z0-9\/_.;\&|+ -]/", '', $str);
它似乎是工作的罚款对我来说,即使没有逃脱它...
试试这个工具来测试您的正则表达式 Regular expression tester
@holub反斜杠反斜杠thingy dones在PHP中工作(atleast)它将做的是逃避反斜杠(“\”)而不是“&” – 2009-12-10 08:10:34
看起来像是有效就好了 – 2009-12-10 08:20:17
不错的工具!我喜欢它!!!!! – 2009-12-10 09:46:17
试图逃脱那个字符? – yoda 2009-12-10 07:45:55
嗨yoda,逃跑怎么样? – Maiori 2009-12-10 08:03:09
它适合我。 'preg_replace(“/ [^ a-zA-Z0-9 \/_。;&| + - ] /”,'','&')'正好返回'&'。 – Gumbo 2009-12-10 08:19:28