php - 删除标点符号、符号、变音符号、特殊字符的最佳方法是什么?

标签 php preg-replace special-characters clean-urls

我使用这些代码行删除所有标点符号、符号等,您可以在数组中看到它们,

$pattern_page = array("+",",",".","-","'","\"","&","!","?",":",";","#","~","=","/","$","£","^","(",")","_","<",">");

$pg_url = str_replace($pattern_page, ' ', strtolower($pg_url));

但我想让它更简单,因为在数组中列出我想删除的所有内容看起来很愚蠢,因为可能还有一些其他我想删除的特殊字符。

我想到了使用下面的正则表达式,

$pg_url = preg_replace("/\W+/", " ", $pg_url);

但它不会删除下划线 - _

删除所有这些东西的最佳方法是什么?正则表达式可以吗?

最佳答案

根据你的贪婪程度,你可以这样做:

$pg_url = preg_replace("/[^a-zA-Z 0-9]+/", " ", $pg_url);

这将替换任何不是字母、数字或空格的内容。

关于php - 删除标点符号、符号、变音符号、特殊字符的最佳方法是什么?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4762546/

相关文章:

java 将特殊字符替换为文本

php - 自动编号问题

php - 在 Woocommerce 的客户运输部分下向管理用户添加其他字段

php - GROUP BY mysql 只显示一行。但也想要重复

php - Twitter 风格的 URL 正则表达式匹配

php - 如何使用 preg_replace 创建 mysql 格式的日期并在日期小于 10 时填充 0

php - 使用 CodeIgniter + Facebook PHP SDK 时 : getUser() always returns 0

php - preg_replace 修改文本并保存到数据库

windows - 如何使用特定程序打开目录具有特殊字符的特定文件?

php - HTML ASCII 实体等效的特殊字符