単語の文字列内のすべての記号またはスペースを「-」に置き換えるにはどうすればよいですか
を含む? @%! $&*(何でも)
習慣沉默2017-05-16 13:18:12
$result = preg_replace('/[^w]|[_]/', '「-」', $str);
匹配替换非字母数字并替换。w
包括_
,如果想一并替换掉,再添加上 |[_]
。
コメントへの返信:
中国語と英語以外の文字を置換したい場合は、パターンを次の形式に変更します: /[^bA-Za-zx{4e00}-x{9fa5}]/u< /code>
/[^bA-Za-zx{4e00}-x{9fa5}]/u
b 表示空格;u4e00-u9fa5
是unicode里中文的表示法,但preg_replace不支持u
的写法,可以使用 x{XXXX}
来替代;
最后使用u
b はスペースを表します。
u4e00-u9fa5
は Unicode での中国語の表現ですが、preg_replace は u
の記述方法をサポートしていません。< を使用できます。代わりに code>x{XXXX} code> を使用します。 🎜最後に、u
オプションを使用して、utf-8 文字セットが使用されることを示します。 🎜