java中正则表达式如何使用?比如判断一个字符串是否满足某种格式,给个详细点的例子

如题所述

按照你的要求给出的Java正则表达式的例子如下

//下面这个正则表达式匹配不能以.css,.html,.js,.json或者.xml结尾的字符串
import java.util.regex.Matcher;
import java.util.regex.Pattern;
public class CC {
 public static void main(String[] args) {
  String s="xxxx.js.jss";//目标字符串
  String regex="((?!\\.((css)|(html)|(js)|(json)|(xml))$).)+";//正则表达式
  Pattern p=Pattern.compile(regex);
  Matcher m=p.matcher(s);
  if(m.matches()){
   System.out.println("匹配");
  }else{
   System.out.println("不匹配");
  }
 }
}

运行结果

匹配

追问

我把目标字符串换了为什么还是打印匹配?

追答

只要不是以.css,.html,.js,.json或者.xml结尾的字符串都会匹配

温馨提示:答案为网友推荐,仅供参考
第1个回答  2016-08-18
正则 的话 不是 不是一两句 就能告诉你的 需要学习个 两天. 基本概念就是一些格式. 理解有点小难度.
给你个例子看看吧

String st = "15XXXXXXXXX";

String st1 = st;

String regex2 = "1[538]\\d{9}"; //总共规定了 11位数字. 开头第一个 数字必须是1第二个数字 5 3 8 都行 剩下的 9个数字 随便. 但必须是数字

Pattern p = Pattern.compile(regex2);
Matcher m = p.matcher(st1);
相似回答