删除 PHP 中可以从其他 textEditor 输入的特殊字符
Posted
技术标签:
【中文标题】删除 PHP 中可以从其他 textEditor 输入的特殊字符【英文标题】:Remove special characters in PHP that can be input from other textEditor 【发布时间】:2021-08-01 02:57:02 【问题描述】:我需要一种方法来将带有项目符号点的字符串转换为纯文本,例如:⃝©£€™≠≤⓫⓫₼₧ῲἏɘ。所有这些都被删除了。
基本上,我有一个字段,用户可以在其中复制粘贴包含奇怪字符的整页 Word,因此我需要一种方法将他复制粘贴的字符串转换为纯文本并删除这些字符。
编辑:我将“@”作为特殊字符的一部分。我删除它。
【问题讨论】:
您需要进一步量化“特殊字符”。您的示例包括一个@
,我个人不会将其视为特殊字符。是否要删除除美国英文字母、数字、空格和某些标点符号以外的所有内容?
如果您还没有听说过“正则表达式”,我建议您现在阅读它们,因为它们可能是您问题的解决方案。但请注意,您需要确保知道文本的字符编码(希望是UTF-8 all the way through)。
为什么不正确设置您的编码,而不必删除“奇怪的字符”呢?请参阅上面发布的链接@IMSoP。
【参考方案1】:
你需要在一个数组中定义你的特殊字符并将它们从字符串中删除:
$input_string = "some t⓫⓫₼₧ῲext";
$special_chars = ["£", "€", "™", "≠", "≤", "⓫", "⓫", "₼", "₧", "ῲ", "Ἇ", "ɘ"];
$replace_with = [];
print str_replace($special_chars, $replace_with, $input_string);
【讨论】:
以上是关于删除 PHP 中可以从其他 textEditor 输入的特殊字符的主要内容,如果未能解决你的问题,请参考以下文章