要求是:欄位由 1 個字母字符后跟 15 個字母數字字符組成,包括最多 2 個連字符 (-)
正則運算式:^(?!^(.)\\1*$)([A-Z]{1}(?=[A-Z0-9-]{2,15}$)[A-Z0-9]*(?:\\-[A-Z0-9]*){0,2}[A-Z0-9] $)
以上正則運算式作業正常,但作為要求,它不允許重復數字,如1) N000000000000000 2)N000000-0000-0
上述 2 個值不允許,因為它的數字與“0”相同。
uj5u.com熱心網友回復:
您可以使用
^[A-Z](?!\D*(\d)(?:\D*\1) \D*$)(?=.{2,15}$)[A-Z0-9]*(?:-[A-Z0-9]*){0,2}[A-Z0-9] $
請參閱正則運算式演示。在代碼內部,在您的字串文字中,確保您兩次轉義反斜杠。
詳情:
^- 字串的開始[A-Z]- 一個大寫的 ASCII 字母(?!\D*(\d)(?:\D*\1) \D*$)- 字串不能只包含相同的數字(?=.{2,15}$)- 當前位置右側必須有 2 到 15 個字符而不是換行符[A-Z0-9]*- 零個或多個 ASCII 大寫字母/數字(?:-[A-Z0-9]*){0,2}- 零、一或兩次出現,-然后是零或多個 ASCII 大寫字母/數字[A-Z0-9]- 一個或多個 ASCII 大寫字母/數字$- 字串結束。`
轉載請註明出處,本文鏈接:https://www.uj5u.com/yidong/485077.html
上一篇:用資料庫中的資料填充JTable
