我现在有一个方法,返回值为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
提交
取消
