正则分组和边界匹配

原创 2013年12月04日 09:50:14

测试匹配整个字符串,然后找出符合字符串当中匹配子正则表达式的子字符串

 

例如:匹配只有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}o\\b.*"));
		out("hellosir".matches("^h[a-z]{1,3}o\\b.*"));
	}
	public static void out(Object o){
		System.out.println(o);
	}
}

 

正则表达式之字符边界

零宽与非零宽非零宽字符:能够匹配字符的(特殊)字符。如:\d会匹配一个数字,\s会匹配空白字符 零宽字符:不匹配字符,只标记位置(具体含义见下文)字符边界 表达式 表示含义 ^ 与字符...
  • chanmufeng
  • chanmufeng
  • 2017年01月06日 19:37
  • 1021

正则表达式高级用法(分组与捕获)

转自:http://www.cnblogs.com/kevin-yuan/archive/2012/11/11/2765340.html 正则表达式高级用法(分组与捕获) 分组...
  • okyoung188
  • okyoung188
  • 2016年11月30日 14:03
  • 9251

Java正则表达式——分组与捕获

传送门:  http://blog.sina.com.cn/s/blog_4b9694cf0100cghj.html 今天处理语料的时候,遇到了问题,问题如下:一些标注好的标有艺术家、歌...
  • u013776081
  • u013776081
  • 2015年01月28日 13:59
  • 3435

Python正则表达式之: (…) group 分组

下面就来解释一下,Python中的(…)的含义和用法: 1.(…) 用来匹配符合条件的字符串。并且将此部分,打包放在一起,看做成一个组,group。 2. 而此group,可以被后续的(正...
  • qq_36801333
  • qq_36801333
  • 2017年04月08日 16:05
  • 937

正则表达式 “双向最小匹配”

最近做一个 字符串查找的例子从字符串中提取制定内容 如下: String input = " rel=\"shadowbox;width=720\">外観図面"; 需要提取   "aut...
  • w605283073
  • w605283073
  • 2015年10月06日 20:23
  • 1368

正则表达式解释器实现原理

以JavaScript正则为例 Author:tuiye@126.com   正则表达式可以用来: (1)验证字符串是否符合指定特征,比如验证是否是合法的邮件地址。 (2)用来查找字符串,从一...
  • jbjwpzyl3611421
  • jbjwpzyl3611421
  • 2014年03月10日 09:23
  • 3055

正则表达式边界符中的 ^, $, \A, \Z, \z

转载自 http://blog.csdn.net/ggicci/article/details/8015087 Regex : 本文介绍正则表达式中边界符 ^ 和 $ 以及 \A 和 \Z...
  • justheretobe
  • justheretobe
  • 2016年11月13日 21:16
  • 1676

Python 正则表达式(分组)

正则表达式分组分组就是用一对圆括号“()”括起来的正则表达式,匹配出的内容就表示一个分组。从正则表达式的左边开始看,看到的第一个左括号“(”表示第一个分组,第二个表示第二个分组,依次类推,需要注意的是...
  • SeeTheWorld518
  • SeeTheWorld518
  • 2015年10月21日 12:47
  • 6180

[C/C++11]_[初级]_[使用正则表达式库进行分组查询]

场景1.正则表达式在查询替换字符串数据时效率很高, 可以节省很多不必要的查询代码. 特别是对字符串分组的查询, 可以说如果没有正则表达式,查询分组里的字符串需要写很多额外的代码,还不一定准确.2.查询...
  • infoworld
  • infoworld
  • 2017年05月15日 14:07
  • 927

正则表达式 分组命名 替换

利用正则表达式分组替换信息: 源数据 :小明 13800138000 广东省 目的结果:广东省 13800138000 小明匹配:^(?.*)\t(?.*)\t(?.*)$替换:${...
  • technofiend
  • technofiend
  • 2016年04月27日 10:45
  • 2162
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:正则分组和边界匹配
举报原因:
原因补充:

(最多只允许输入30个字)