PHPの置換問題。中国語、数字、文字以外の場合は、-- スペース、. % を _
に置き換えてください。たとえば、このファイル名 ??????_TRAX_Full HD_1080pPC.txt
は --_ に置き換えられます。 ---_-- _TRAX_Full HD_1080pPC.txt
現在str_ireplace関数を使用しているのですが実装できないようです。 。
中国語以外の文字、数字、文字を -- に置き換える関数を書くのを手伝ってくれる人はいますか?
それから、次の関数を使用して $str を返すことができ、問題ないはずです。 。
return str_ireplace(array(' ','&','・','%'),'_',$str);
半角英語のみを計算
preg_replace('#[^a-z0-9x4E00-x9FCF]#iuU', '--', $str);
Include全角数字 半角英数字
preg_replace('#[^a-z0-9xff10-xff19xff21-xff3axff41-xff5ax4E00-x9FCF]#iuU', '--', $str); は含まれません。すべて漢字なので、誤って殺す可能性がありますが、その可能性は非常に低いです
xff10-xff19 全角 0-9
xff21-xff3a 全角 A-Z
xff41-xff5a 全角 a-z
Angular数値
preg_replace('#[^a-z0-9x4E00-x9FCF]#iuU', '--', $str);
preg_replace('#[^a- z0-9xff10-xff19xff21- xff3axff41-xff5ax4E00-x9FCF]#iuU', '--', $str);
上記の正規表現にはすべての漢字が含まれていないため、誤って強制終了される可能性がありますが、確率は非常に低い
xff10-xff19 全角 0-9
xff21- xff3a 全角 A-Z
xff41-xff5a 全角 a-z
x4E00-x9FCF 主要な漢字(少数の古代文字と異体字は含まれていません)この範囲)
期待した効果が得られないようですが、とにかくありがとうございます
ああ、上記の角括弧内に + 記号があります。単一の文字を置き換えるだけです
混合コンパイルの場合は、置換される文字に漢字や英語の数字が混在していることを意味します
ああ、上記は単一の文字置換です
韓国語と特殊記号だけを正規表現で置換できますか?
あ、角括弧の外側に+記号がありますが、これは単一の文字だけを置換するものです
混在していると、置換文字が漢字や英語の数字と混ざってしまい面倒です。
中国語の文章を理解するのは難しいです
正規表現を使用して韓国語の文字と特殊記号だけを置き換えることはできますか?
正規表現を使用して韓国語の文字と特殊記号のみを置換することはできますか?
どういう意味ですか?
韓国語の範囲は AC00-D7AF (メイン フォント) です
特殊記号は難しく、何万もの記号が含まれており、それらは非常に散らばっています。ある国
たとえば、物理計算の記号の多くは古代ギリシャ語です
一般的に、選択できる記号の範囲は限られています
。