正则分组和边界匹配
发布时间:2020-12-14 01:59:42 所属栏目:百科 来源:网络整理
导读:测试匹配整个字符串,然后找出符合字符串当中匹配子正则表达式的子字符串 例如:匹配只有3到5个数字,只有两个 public class Fenzu {public static void main(String[] args) {Pattern p = Pattern.compile("(d{3,5})([a-z]{2})");String s = "123aa-3434b
|
测试匹配整个字符串,然后找出符合字符串当中匹配子正则表达式的子字符串 例如:匹配只有3到5个数字,只有两个 public class Fenzu {
public static void main(String[] args) {
Pattern p = Pattern.compile("(d{3,5})([a-z]{2})");
String s = "123aa-3434bb-234ccc-00";
Matcher m = p.matcher(s);
//分组查找是找出满足全部正则表达式的条件中之后再进行“局部”筛选
while(m.find()){
System.out.println(m.start());
//打印出满足p模式中的分组1——只有数字
System.out.println("符合3到5个数字 第一个分组:" + m.group(1));
System.out.println("符合有两个字母的 第二个分组: " + m.group(2));
System.out.println(m.end());
}
}
}
边界小Demo public class boundaryTest {
public static void main(String[] args) {
//以h开头的字符
out("help sir".matches("^h"));
//以h开头的字符串
out("hello sir".matches("^h.*"));
//表示以ir结尾的字符串
out("hello sir".matches(".*ir$"));
//b表示的是单词之间的空格
out("hello sir".matches("^h[a-z]{1,3}ob.*"));
out("hellosir".matches("^h[a-z]{1,3}ob.*"));
}
public static void out(Object o){
System.out.println(o);
}
} (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
