問題タブ [unicode-normalization]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
php - 正規化されたUTF-8とは何ですか?
ICUプロジェクト(現在はPHPライブラリもあります)には、検索時に値を比較しやすくするためにUTF-8文字列を正規化するために必要なクラスが含まれています。
しかし、私はこれがアプリケーションにとって何を意味するのかを理解しようとしています。たとえば、「互換性の同等性」ではなく「標準的な同等性」が必要な場合、またはその逆の場合はどうなりますか?
c++ - UTF8 は単射マッピングですか?
アプリケーションを作成し、C++
これを知る必要があります。
テキストのエンコードはUTF8
、バイトから文字への単射写像ですか?つまり、すべての文字 (文字...) は一方向でのみエンコードされますか? したがって、たとえば文字「Ž」は、たとえば 3231 と 32119 の両方としてエンコードすることはできません。
php - PHP で W3C に従って Unicode を正規化する
W3C バリデーターで Web サイトの HTML コードを検証しているときに、次の警告が表示 されました。
PHP 5.3.x で開発しているので、Normalizerクラスを使用できます。
これを修正するにはNormalizer::normalize($output)
、ユーザーが行った入力 (コメントなど) を表示するときに使用する必要Normalizer::normalize($input)
がありますか?それとも、ユーザー入力をデータベースに保存する前に使用する必要がありますか?
tl;dr:ユーザー入力をデータベースに保存する前、または表示するときにUnicode 正規化を使用する必要がありますか?
.net - Unicode文字列を正規化して、その正規表現を取得します
たとえば、 (1つのUnicode文字)を(2つのUnicode文字、つまり、組み合わせのアクサングラーブ(U + 0300)の後にa)"à"
としてエンコードすることもできるとすると、.NETには、文字列を正規化して後者が"\u0300a"
前者に変換しましたか?
前者は標準的な表現と見なされていると思います。私の特定の問題は、後者が一部のブラウザで正しく表示されない場合を見たことですが、これは他のシナリオでも役立つ可能性があります。
php - PHP 5.3がnormalizer_normalize()を見つけることができません
PHP 5.3で導入されたnormalizer_normalize()関数(ドキュメントによると)を使用しようとしていますが、使用できません。
PHPのバージョンを確認しましたが、5.3です。
PHPがそれを見つけられない理由がわかりませんか?
php - PHP と MySQL で、スマート クォートをデータベースに正しく書き込むにはどうすればよいですか?
CLEditor リッチテキスト コントロールを含む PHP Web サイトがあります。ユーロと英国ポンドをデータベースに書き込もうとすると、含まれているページの HTML、リッチテキスト コントロールの IFRAME HTML、および MySQL テーブル照合で文字セットが UTF-8 に設定されているため、文字は正常に処理されます。その面ではすべて順調です。ただし、 smart quotesを書き込もうとすると、データベースに次の出力が表示されます。
(ブラウザで上記が正しく表示されない場合、テスト単語には、単語の前にラテン語の a、ユーロ記号、および小さな AE 記号があり、その後にラテン語の a とユーロ記号が表示されます。 )
PHP を使用してその値をデータベースから読み込んでページに表示すると、他のラテン文字と同様に疑問符が付いた黒いひし形になります。
これを修正するにはどうすればよいですか?
c++ - 標準的なUnicode文字列形式
たとえば、としてエンコードされたUnicode文字列がありますUTF8
。Unicodeの1つの文字列は、数バイトの表現を持つことができます。Unicode文字列の正規の(正規化された)形式が存在するか、作成できるのでしょうか。たとえば、そのような文字列をmemcmp(3)
などと比較できます。たとえば、ICUや他のC/C++
ライブラリでそれを実行できますか?
python - PythonでUnicodeテキストをファイル名などに正規化する
Python で国際的な Unicode テキストを安全な ID とファイル名に正規化するためのスタンドアロンのソリューションはありますか?
たとえばMy International Text: åäö
、my-international-text-aao
plone.i18nは本当に良い仕事をしますが、残念ながらそれは や 他のいくつかのパッケージに依存してzope.security
おりzope.publisher
、脆弱な依存関係になっています。
java - Javaでutf-8に変換する
文字列が\u0130smail
あり、それをİsmailに変換して変換したい
私は試した
動作しましたが、DBまたはインターネットから文字列を取得すると"\u0130smail"
、正しい結果が得られません。
どちらも機能しませんでした。