我现在有一个方法,返回值为int类型,用变量num接收。现在我想写一个正则表达式来表示[1-num],即1到num中的某个数。就像[1-8],把8换成num,但是正确的语法是什么?到底怎么写?求教大神
1 回答
luofuxiang
TA贡献34条经验 获得超34个赞
楼主可以先定义一个字符串表示正则表达式,再把num的值添加到字符串中,添加后的字符串作为新的正则表达式。类似代码如下:
import java.math.*; import java.util.regex.*; public class Test3 { public static void main(String[] args){ int num = 8; String regs="[1-"; /*定义正则表达式匹配字符串*/ regs = regs + String.valueOf(num);/*重新构造匹配字符串*/ regs = regs + "]"; System.out.println(regs); /*打印新的匹配字符串*/ Pattern pattern = Pattern.compile(regs);/*声明一个Pattern对象*/ Matcher matcher1 = pattern.matcher("000000");/*获取Matcher对象*/ Matcher matcher2 = pattern.matcher("1010101"); System.out.println(matcher1.find());/*打印匹配结果*/ System.out.println(matcher2.find()); } }
输出结果:
[1-8] false true
添加回答
举报
0/150
提交
取消