我現(xiàn)在有一個(gè)方法,返回值為int類型,用變量num接收?,F(xiàn)在我想寫一個(gè)正則表達(dá)式來表示[1-num],即1到num中的某個(gè)數(shù)。就像[1-8],把8換成num,但是正確的語法是什么?到底怎么寫?求教大神
1 回答

luofuxiang
TA貢獻(xiàn)34條經(jīng)驗(yàn) 獲得超34個(gè)贊
????樓主可以先定義一個(gè)字符串表示正則表達(dá)式,再把num的值添加到字符串中,添加后的字符串作為新的正則表達(dá)式。類似代碼如下:
import?java.math.*; import?java.util.regex.*; public?class?Test3?{ ????public?static?void?main(String[]?args){ ????int?num?=?8; ????String?regs="[1-";????????????????/*定義正則表達(dá)式匹配字符串*/ ????regs?=?regs?+?String.valueOf(num);/*重新構(gòu)造匹配字符串*/ ????regs?=?regs?+?"]"; ????System.out.println(regs);?????????/*打印新的匹配字符串*/ ???? ????Pattern?pattern?=?Pattern.compile(regs);/*聲明一個(gè)Pattern對(duì)象*/ ????Matcher?matcher1?=?pattern.matcher("000000");/*獲取Matcher對(duì)象*/ ????Matcher?matcher2?=?pattern.matcher("1010101"); ????System.out.println(matcher1.find());/*打印匹配結(jié)果*/ ????System.out.println(matcher2.find()); ????} }
輸出結(jié)果:
[1-8] false true
添加回答
舉報(bào)
0/150
提交
取消