如何净化包含&符号的字符串以便与另一个文本字符串进行比较

问题描述:

由于有多种编码“特殊”字符的方法,特别是&符号,如何进行字符串比较以从两个字符中删除所有特殊字符针和干草堆允许“苹果到苹果”的比较来检查针是否出现在干草堆中?如何净化包含&符号的字符串以便与另一个文本字符串进行比较

例如,如果我有一个针“黑色&分层”,我想将其消毒到“黑色甲板”,然后看看“黑色甲板”是否出现在干草堆中,我将需要做同样的事情为了解释“和”字编码的所有方式以及“黑色分层”如何被编码以出现在干草堆中,我替换了干草堆。

& 
& (I've only seen this in WordPress editor markup) 
&#038 

是否有preg_replace,正则表达式或替换方法可以做到这一点在一定程度上的准确性?

是否要将字符串缩小为字母,数字和空格?为此,我会使用 preg_replace('/[^\w\d ]/', '') 这基本上消除了任何东西,这不是一个“单词字符”,数字或空间

+0

如果什么草堆(或为此事针)存储为“黑&双层”,取代字符串将会是“黑色甲板”,不是吗? –

+0

是真的,我忘了那个。在这种情况下,首先通过'htmlspecialchars_decode()'传递字符串。 很难做出像这样普遍的东西,你只需要知道你可能遇到的不同的编码 –

+0

+1的解决方法!现在测试它 –