我有来自旧 OsCommerce 安装的这段代码
$pattern = $this->attributes['SEO_REMOVE_ALL_SPEC_CHARS'] == 'true'
? "([^[:alnum:]])+"
: "([[:punct:]])+";
我想修改 [:punct:] 选择器,使其不包括 - 破折号。
下一行代码是
$anchor = ereg_replace($pattern, '', strtolower($string));
它删除了以前找到的字符。我怎样才能保留我的破折号?
谢谢,马里奥
编辑
我想我明白了:
$pattern = $this->attributes['SEO_REMOVE_ALL_SPEC_CHARS'] == 'true'
? "([^[:alnum:]])+"
: "([^-a-zA-Z0-9[:space:]])+";
注意:破折号必须先出现。或者,对于下划线:
$pattern = $this->attributes['SEO_REMOVE_ALL_SPEC_CHARS'] == 'true'
? "([^[:alnum:]])+"
: "([^a-zA-Z0-9_[:space:]])+";
我不知道如何使用负前瞻:(。干杯。马里奥