【发布时间】:2018-11-15 21:43:51
【问题描述】:
我正在尝试使用preg_replace 函数,它按预期工作。问题是它还删除了像Ö 这样的特殊字母表并删除了O。我怎样才能保留Ö?
$string='GÖTEBORG-SEASON-1';
echo $str=preg_replace('/[^A-Za-z-_]/', '', $string);
它输出GTEBORG-SEASON- (Ö is missing) 但我期待GÖTEBORG-SEASON-
谢谢。
【问题讨论】:
-
你要替换的每个字符串都是这样吗?因为那时,您可以只使用
substr()并且只删除最后一个字符。如果您只想删除数字,则会想到preg_replace('/\d/', '', $string);。请更清楚您想要实现的目标。 -
使用正则表达式
'/[^A-Za-z_-]/'时是否也会出现这种情况? -
使用mb_ereg_replace 支持多字节。