簡體   English   中英

模式與Java中的2個中間數字匹配

[英]pattern match with 2 middle number in java

我希望第三個模式([0-9] {2})小於10或10。我也嘗試過使用[1-9] | 0 [0-9] | 1 [0-0]模式而不是[ 0-9] {2},但無法獲得解決方案。 我想要以下格式的結果:012 550 10 0123456 01。

public static void main(String args[]){         
            System.out.println(Pattern.matches("[0-9]{3}[550]{3}[0-9]{2}[0-9]{6}[01]{2}", "8035501002499901")); 
}

從您的問題看來,您想要的模式似乎是這樣的:

  • 任何3位數字( [0-9]{3}
  • 550固定( 550 )-注意[550]{3}表示3位數的任何5或0序列,例如005、050、555等。
  • 2位數字,應為0x或10( (?:0[0-9]|10)
  • 任意6位數字​​( [0-9]{6}
  • 01固定( 01 )- [01]{2}表示2位數字的任意序列,即0或1,例如00、01、10和11都將匹配

因此,您需要的正則表達式為:

[0-9]{3}550(?:0[0-9]|10)[0-9]{6}01

暫無
暫無

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

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