簡體   English   中英

Java 代碼約定:必須匹配模式 '^[az][a-zA-Z0-9]*$'

[英]Java Code Conventions: must match pattern '^[a-z][a-zA-Z0-9]*$'

我想使用以下常量:

final String ADD = "Add text";

但是我的 CheckStyle 工具告訴我“ADD”與模式'^[az][a-zA-Z0-9]*$'.不匹配'^[az][a-zA-Z0-9]*$'.

誰能告訴我“ADD”有什么問題? 意思是'^[az][a-zA-Z0-9]*$'每個名字都必須以低字符開頭? 沒有其他可能嗎?

感謝您的回答。

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

此正則表達式描述的內容以小寫字母開頭,其余部分由大寫字母、小寫字母和數字組成。 (例如: aVariablevariableaNewVariablevariable7aNewVariable7 。)

如果您希望您的字段保持不變和靜態,請使用:

static final String ADD = "Add text";

否則,請使用:

final String add = "Add text";

如果它是你想要的常量,它也應該是static

static final String ADD = "Add text";

常量通常使用大寫字母,但由於您的變量不是靜態的,因此不會被解釋為常量。

這個正則表達式表明需要駝峰式大小寫,第一個字母小,然后每個下一個單詞的第一個字母都作為大寫字母。

我剛剛遇到了同樣的問題,事實證明這是因為我正在處理的 Java 代碼庫預計所有變量都使用駝峰式大小寫作為命名約定。 因此,請務必檢查您的變量是否根據正則表達式模式^[az]([a-z0-9][a-zA-Z0-9]*)?$命名。 就我而言,我陷入了 Python 模式,並將我的變量命名為version_regex而不是versionRegex 一旦我進行了所需的更正,就不再拋出錯誤。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM