我想要替換所有的 「...」 用了preg_replace, 例子:你好... =>你好使用的preg_replace 「...」 的
我tryed:
$dir = preg_replace('/.../', '', $dir);
但它不工作:/
我想要替換所有的 「...」 用了preg_replace, 例子:你好... =>你好使用的preg_replace 「...」 的
我tryed:
$dir = preg_replace('/.../', '', $dir);
但它不工作:/
的dot(.
)是正則表達式中一種特殊字符,匹配任何單個字符除換行符(或全部,如果指定PCRE_DOTALL
任何字符)。如果你真的想匹配一個文字.
字符,你必須逃避它或包裝在一個字符類。
然而,對於一些這個簡單,沒有必要對正則表達式。只需使用str_replace
:
$dir = str_replace('...', '', $dir);
還要注意,一個horizontal ellipsis(…
)是從三個時期(...
)獨立的Unicode字符。如果你也需要處理這些,那麼PHP會提供真正的Unicode支持,這會變得棘手。究竟如何處理它取決於$dir
編碼,但假設它是UTF-8編碼,這將消除任何水平省略號字符(\xE2\x80\xA6
是\u2026
的UTF-8編碼形式):你爲什麼要使用
$dir = str_replace("\xE2\x80\xA6", '', $dir);
謝謝!完美! – user3598013
'preg_replace'而不是'str_replace'? – Barmar