入力文字列を受け取り、英数字のみを残してすべての特殊文字を削除することにより、その文字列のサニタイズされたバージョンを返すphp関数を探しています。
同じことをするが、アルファベットのA〜Zだけを返す2番目の関数が必要です。
どんな助けも大歓迎です。
これらはどのUnicode正規化フォームに含まれていて、なぜこれを行いたいのですか?
—
tchrist
AZと「英数字」を言うとき、本当にAZだけを意味するのですか、それとも外国語や古いスクリプトを含むすべての言語のすべての文字を一致させたいですか?
—
Mark Byers
アクセントを区別しない文字列比較を実行できるようにこれを行っている場合は、間違っていることになります。
—
tchrist
それはだていないだけで、「すべての言語から」。英語です。英語はラテン文字を使用します。あり
—
tchrist
unichars '\p{Latin}' '\p{Alphabetic}' '[^A-Za-z]' | wc -l
、ラテンアルファベットですが、AZではありません== 1192コード・ポイントは。英語ではASCIIで十分であるというのが一般的な見方です。そうではありません。そのため、AZの記述にはコードの匂いがあります。
@スコットB:英語はAZからの26文字だけを使用するのではありません。たとえば、単語résuméにはéが含まれます。これはあなたがより良い答えを得るために役立つかもしれないので、おそらくあなたはあなたが何をしようとしているのかを説明することができます。
—
Mark Byers、2011年