19

次の定数を使用したいと思います。

final String ADD = "Add text";

しかし、私のCheckStyleツールは、「ADD」がパターンと一致しないことを教えてくれます'^[a-z][a-zA-Z0-9]*$'.

誰かが「ADD」の何が問題になっているのか教えてもらえますか?'^[a-z][a-zA-Z0-9]*$'すべての名前は低い文字で始まらなければならないという意味ですか?他に可能性はありませんか?

回答ありがとうございます。

4

4 に答える 4

36
^[a-z][a-zA-Z0-9]*$

この正規表現は、小文字で始まり、残りは大文字、小文字、および数字で構成されるものを記述します。(例:aVariable、、、、、variable。)aNewVariablevariable7aNewVariable7

フィールドを一定かつ静的にしたい場合は、次を使用します。

static final String ADD = "Add text";

それ以外の場合は、次を使用します。

final String add = "Add text";
于 2012-10-30T20:06:51.517 に答える
8

それがあなたが望む定数であるならば、それはまたあるべきですstatic

static final String ADD = "Add text";

定数は通常大文字を使用しますが、変数は静的ではないため、定数として解釈されませんでした。

于 2012-10-30T20:05:57.753 に答える
1

この正規表現は、最初の文字が小さく、次のすべての単語に最初の文字が大文字で含まれているキャメルケースの必要性を示しています。

于 2020-10-15T10:56:15.953 に答える
0

同じ問題が発生しました。これは、作業中のJavaコードベースで、命名規則としてすべての変数にキャメルケースを使用することが予想されていたためです。したがって、変数が正規表現パターンに従って名前が付けられているかどうかを必ず確認してください^[a-z]([a-z0-9][a-zA-Z0-9]*)?$。私の場合、Pythonモードでスタックし、変数に。version_regexの代わりに名前を付けましたversionRegex。必要な修正を行うと、エラーはスローされなくなります。

于 2021-12-28T15:51:48.707 に答える