私はCSSにコンパイルされる一連の言語の解析/トークン化に取り組んでおり、非ASCII入力をどのように処理するかについて行き詰まっています。明らかに、多くの人がこれまでこれに対処したことがあります。
一般的な経験則として、私は「UTF-8に変換し、処理して、入力として使用したエンコードに変換し直す」と読み続けています。私はそのアプローチに同意する傾向があります...
しかし、私が直接使用する句読点と数字はすべてASCII(コードポイントが127未満)であり、他の文字列はすべてハッシュテーブルに詰め込まれます(つまり、プログラムはすべきではありません)。特定の文字を表現するために必要なバイト数に注意してください)。
ここに質問があります:
興味のあるコードポイント(すべて127未満)のASCII定義と競合する正式な文字セットはありますか?
直接処理しないすべての文字に一致させ、ワイド文字UTF-8エンコードデコードの大失敗全体をスキップするために、big oleの文字範囲を設定する際の明らかなエラーを確認できますか?
例えば:
//A-Z, a-z and all the non-ASCII stuff
character = (0x41..0x5A) || (0x61..0x7A) || (0x80..0xFF)
//match 1 or more
identifier = character+
本当にありがとう!