我需要使用 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 正则表达式标签 ;-)