Php 如何替换所有特殊字符,但保留重音
我想更改字符串中的所有特殊字符,但我想保留所有重音字符。是否可以使用Php 如何替换所有特殊字符,但保留重音,php,regex,preg-replace,non-ascii-characters,Php,Regex,Preg Replace,Non Ascii Characters,我想更改字符串中的所有特殊字符,但我想保留所有重音字符。是否可以使用preg\u replace() 我当前的代码: preg_replace('/[^A-Za-z0-9\-]/', '', $string); 试试Unicode: preg_replace('/[^\p{L}0-9\-]/u', '', $string); \p{L}是一种匹配任何语言中所有字母的语言,嘿,stema!谢谢你的回复!干得好!如果我不想替换&和单引号,我该怎么做呢?PHP文档似乎更准确地回答了这个问题:谢谢
preg\u replace()
我当前的代码:
preg_replace('/[^A-Za-z0-9\-]/', '', $string);
试试Unicode:
preg_replace('/[^\p{L}0-9\-]/u', '', $string);
\p{L}
是一种匹配任何语言中所有字母的语言,嘿,stema!谢谢你的回复!干得好!如果我不想替换&和单引号,我该怎么做呢?PHP文档似乎更准确地回答了这个问题:谢谢大家的帮助@伊格纳西奥拉戈,谢谢你的链接,把它添加到answer@Dimi,只需在否定字符类中添加其他字符,例如,[/[^\p{L}0-9&\-]/]
Hello Riskesh,此主题与您的主题不同。:)@投票人:上面提供的副本不正确。