【发布时间】:2012-06-15 09:32:06
【问题描述】:
我需要使用 PHP 的 preg_replace 去除字符串末尾的所有非字母数字字符:
Word One, Two, -、Word One, Two,[space]、Word One, Two,、Word One, Two 都应该变成Word One, Two。
我试过preg_replace('/(.+)\\W+$/', '$1', 'Word One, Two, -');,但这只会去掉最后一个非单词字符。我还尝试了'/(.+)\\W*$/',因为我认为如果找到 0 或 1 个非单词字符(如我需要),这将使它工作,但它根本不匹配。我想我需要让\W 变得贪婪,但我不知道怎么做。有任何想法吗?另外,请随时向我解释我做错了什么,这样我就不会发现自己困扰着 SO 正则表达式标签 ;-)
【问题讨论】: