正規表現を使用してドキュメント内のすべてのPascalCased単語を検索するにはどうすればよいですか?
Pascal ケースという単語を知らない場合は、先頭のキャメル ケース(最初の文字が大文字であるキャメル ケースの単語) だけに関心があります。
正規表現を使用してドキュメント内のすべてのPascalCased単語を検索するにはどうすればよいですか?
Pascal ケースという単語を知らない場合は、先頭のキャメル ケース(最初の文字が大文字であるキャメル ケースの単語) だけに関心があります。
私の問題を解決した正規表現 (FitNesse DbFit Web サービスによって認識される適切な名前のディレクトリ) は次のとおりです。
(^[A-Z][a-z0-9]+[A-Z]$)|(^[A-Z][a-z0-9]+([A-Z][a-z0-9]+)+$)|(^[A-Z][a-z0-9]+([A-Z][a-z0-9]+)+[A-Z]$)
これらの特定の CamelCase ルールをリバース エンジニアリングしました。
1. First character uppercase alpha
2. Next 1-n characters lowercase alphanumeric
3. Next character (n+1) uppercase alpha
4. Next 0 or more characters lowercase alphanumeric
No consecutive uppercase; no special characters.
Pattern may be repeated, e.g. NoChildLeftBehindSuite9102
式は次のように私のテストに合格しました:
Camel01C is CamelCase syntax
Camel01c01 is not CamelCase syntax
Camel01C01 is CamelCase syntax
Camel01CC01 is not CamelCase syntax
Camel0a1c1 is not CamelCase syntax
Camel0a1C1 is CamelCase syntax
Camel0ac1b1C1 is CamelCase syntax
CamelC is CamelCase syntax
CamelC1 is CamelCase syntax
CamelCA is not CamelCase syntax
CamelCa1 is CamelCase syntax
CamelCa_1 is not CamelCase syntax
IbsReleaseTestVerificationRegressionSuite is CamelCase syntax
IbsReleaseTestVerificationRegressioNSuite is not CamelCase syntax
IbsReleaseTestVerificationRegressioN is CamelCase syntax
@AdamCrume の提案の 1 つを変更しました。
([A-Z]+[a-z0-9]+)+
これは一致しますが、一致IFrame
しませんABC
。他のキャメルケースの単語も一致します。たとえば、です。AbcDoesWork
最も重要なのは、少なくとも別の大文字の文字を持たない単純な単語とも一致することですFrame
。
このバージョンについてどう思いますか?重要なケースを見逃していますか?