| |
毎度お世話になっております。Fzok4234 です。
さて、スペルチェックの対象となる英単語の定義の仕方についてですが、キャメル
ケースやパスカルケースの
語句の中の各単語をスペルチェックの対象にするにはどうすればよいのでしょうか ?
例えば、
PSArgumentOutOfRangeException
という語句があった場合、これを
PS
Argument
Out
Of
Range
Exception
というように各セグメントに分解してそれぞれに対してスペルチェックを行うという
ことです。
このようなキャメルケースの各セグメントを考慮して任意の英単語にマッチさせる正
規表現は、
(?:(?<![A-Z])[A-Z]+(?:(?=[A-Z][a-z])|(?![a-zA-Z])))|(?:(?:[A-Z]|(?<![a-zA-
Z]))[a-z]+(?![a-z]))
という感じになりますが、スペルチェック対象の英単語の定義をこの正規表現で厳格
に指定したいのですが、
やり方が分からず困っている状態です。
現在、スペルチェックの対象に指定している項目は
・コメント
・文字定数
のみにしていますが、実際の運用ではドキュメントコメントやエラーメッセージ文の
文字列リテラルに
キャメルケースの関数名などの識別子名をそのまま記述するケースが多く、スペルチ
ェックでこの識別子名が
スペルミスと誤判定してしまって大変困っています。
キャメルケースの各セグメントは正しい英単語になっていることがほとんどなので、
各セグメントごとに
スペルチェックを行えれば誤判定の量はかなり減らすことができます。
この問題に上手く対処させる方法のご教示をお願いいたします。
|
|