3
4

3 に答える 3

4

Unicode には、Symbols、Letters などの文字プロパティPHP Docsがあります。preg_matchDocsu修飾子を使用して、特定のクラスの任意の文字列を検索できます。

echo preg_match('/pP$/u', $str);

ただし、そのためには文字列が必要UTF-8です。

これは自分でテストできます。次の方法ですべてのプロパティをテストする小さなスクリプトpreg_matchを作成しました。

Looking for properties of last character in "Test.":
Found Punctuation (P).
Found Other punctuation (Po).

Looking for properties of last character in "这是一个在中国的字符串。":
Found Punctuation (P).
Found Other punctuation (Po).

関連: PHP - ブラウザーで表示できないすべての文字を utf8 文字列から削除する高速な方法

于 2011-10-05T13:23:05.053 に答える
4
于 2011-10-05T13:25:27.353 に答える
3

あなたは音訳しようとしているのではなく、翻訳しようとしているのです!

UTF-8 は言語ではなく、世界で知られているすべての言語を (事実上) サポートする Unicode 文字セットです。

あなたがやろうとしていることは次のようなものです:

echo iconv("UTF-8", "ASCII//TRANSLIT//IGNORE",  "这是一个在中国的字符串。");
echo iconv("UTF-8", "ASCII//TRANSLIT//IGNORE",  "à è ò ù");

あなたの中国の例ではうまくいきません

于 2011-10-05T13:29:54.987 に答える