我在一个丰富的HTML文本字符串上使用HTML实体,但一些像Â的字符仍然通过...我怎么能强制只有英文,同时仍然保留HTML格式或强制他们到HTML?php:剥离不需要的字符
0
A
回答
4
我认为从phpbuilder下面的一段代码似乎是合理的。它使用正则表达式检查一些输入($ string)中的无效字符。
if(preg_match("@[^a-zA-Z0-9\~`\!\@#$%\^&\*\(\)_\-\+\=\{\}\[\]\'\"\:\;\?\/\>\<\.\,\|]*@", $string) {
// There are non-english characters....
} else {
// There are no non-english characters
}
祝你好运。
0
尝试这样:
$arr_busca = array('á','à','â','ã','ª','Á','À',
'Â','Ã', 'é','è','ê','É','È','Ê','í','ì','î','Í',
'Ì','Î','ò','ó','ô', 'õ','º','Ó','Ò','Ô','Õ','ú',
'ù','û','Ú','Ù','Û','ç','Ç','Ñ','ñ');
$arr_susti = array('a','a','a','a','a','A','A',
'A','A','e','e','e','E','E','E','i','i','i','I','I',
'I','o','o','o','o','o','O','O','O','O','u','u','u',
'U','U','U','c','C','N','n');
$nom_archivo = trim(str_replace($arr_busca, $arr_susti, $nom_archivo));
return $nom_archivo;
我从php.net str_replace page,这就是为什么变量在西班牙得到它的直接...
正如评论所说,这是一个不完整的字符列表来检查,但这是关于如何检查和替换它们的想法。你可能想要搜索一个库。
+0
该列表非常不完整,我不认为依靠它是安全的。它不包括北欧语言使用的任何字符,如å,ä,ö和ü。 – 2009-07-25 23:30:12
相关问题
- 1. PHP剥离出字符串
- 2. 如何从不需要的部分剥离字符串?
- 3. 剥离不需要的字符从一个字符串在MS SQL
- 4. 剥离字符串
- 5. 从数组剥离不需要的数据在PHP
- 6. 剥离空白PHP
- 7. 从MySQL字段剥离字符串?
- 8. 剥离字符串Python化的方式
- 9. 剥离SQL Server中的字符串
- 10. 如何剥离后的字符串
- 11. 剥离Java中的无效XML字符
- 12. innerHTML剥离动态添加的字符
- 13. 如何剥离的第一个字符
- 14. 被剥离的符号不能隐藏字符串linux工具
- 15. 剥离查询字符串用PHP(的preg_replace)
- 16. PHP剥线字符串
- 17. 重写规则剥离字符
- 18. HTML电子邮件剥离字符
- 19. 停止jOOQ剥离从SQL域字符
- 20. 从字符串末尾剥离图案
- 21. 如何从字符串中剥离&?
- 22. 剥离字符串的前75个字符并保留字
- 23. htaccess的已剥离“.PHP”,但需要一个子页面的URL查询
- 24. PHP DOMDocument剥离HTML标签
- 25. 字符串中剥离出来的所有字符,留下数
- 26. gcc vs. clang:符号剥离
- 27. HttpWebResponse剥离换行符
- 28. 从fread剥离换行符
- 29. i18n友好的剥离非字母数字字符的方式
- 30. 剥离的#define
我认为你更好地处理非英文字符并且不使用实体。 – artificialidiot 2009-07-26 11:10:53