社区
Java SE
帖子详情
正则表达式,急急急急!
wilsonily
2010-03-31 07:06:15
正则表达式中(?=X),(?!x),(?<=x)(?!x),是什么意思?怎么用啊?例如:Pattern p = Pattern.compile("(?<=a).{3}");
String s = "444a66b";
Matcher m = p.matcher(s);
while(m.find()) {
System.out.println(m.group());
}
他们分别输出结果是什么?最好解释一下!谢谢!
...全文
128
6
打赏
收藏
正则表达式,急急急急!
正则表达式中(?=X),(?!x),(?<=x)(?!x),是什么意思?怎么用啊?例如:Pattern p = Pattern.compile("(?<=a).{3}"); String s = "444a66b"; Matcher m = p.matcher(s); while(m.find()) { System.out.println(m.group()); } 他们分别输出结果是什么?最好解释一下!谢谢!
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
6 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
wilsonily
2010-04-04
打赏
举报
回复
4# 和5# 的看来是Java高手了 以后多多指教了! 并且谢谢各位了!我也在学Java啊,目前还在j2se阶段,菜鸟还算不上,努力了!
猿敲月下码
2010-04-01
打赏
举报
回复
[Quote=引用 4 楼 bao110908 的回复:]
输出 66b
(?=X),(?!X),(?<=X),(?<!x)
这 4 个称为环视(lookaround)
前两个称为顺序环视(lookahead),后两个称为逆序环视(lookbehind)
带有 = 号的肯定型,带有 ! 号为否定型
(?<=a).{3} 表示匹配三个字符,这三个字符有个条件,就是这三个字符前面的一个字符为“a”。
(?<=a) 是不占用匹……
[/Quote]
有正则的地方就有火龙果 下次想找火龙果直接开个求正则的帖子就行了
愚人节快乐
火龙果被占用了
2010-04-01
打赏
举报
回复
输出 66b
(?=X),(?!X),(?<=X),(?<!x)
这 4 个称为环视(lookaround)
前两个称为顺序环视(lookahead),后两个称为逆序环视(lookbehind)
带有 = 号的肯定型,带有 ! 号为否定型
(?<=a).{3} 表示匹配三个字符,这三个字符有个条件,就是这三个字符前面的一个字符为“a”。
(?<=a) 是不占用匹配字符位的,只是表示字符间的空隙。
四个环视结构都是零长度匹配,也就是无任何匹配字符的表达式,只是用于作为匹配的条件判断。
444a|66b
(?<=a) 表示的是上面中“|”的位置,意思就是在这个间隙的前面有个字符 a
(?<!a) 表示这个间隙的前面除字符 a 的其他字符
(?=a) 表示这个间隙后面的字符应为 a
(?!a) 表示这个间隙后面为除 a 之外的其他字符
(?<=),(?<!) 表示往前看,因此称为逆序
(?=),(?!) 表示往后看,因此称为顺序
这个需要好好的理解,具体的可以看看我原来在下面这些帖子中的回复:
正则表达式 环视问题
http://topic.csdn.net/u/20080619/08/e4d3ce39-6649-45e2-8f01-34e83161e108.html
请解释一下正则的相关内容
http://topic.csdn.net/u/20080627/14/8a91b33a-f35c-4303-85b5-e0a8da462202.html
确保字符串是1-100的数,怎么写正则?
http://topic.csdn.net/u/20080503/01/3c82b040-43b9-4b44-847d-07b366285957.html
请详细解释一下你的正则表达式
http://topic.csdn.net/u/20080716/22/80cdd418-a0e9-4e7e-8435-df6d4bc11c4a.html
guoliang2010
2010-03-31
打赏
举报
回复
当前字符串中 从a的下一位开始,取 3 位字符。
水中影子
2010-03-31
打赏
举报
回复
没见过这种正则表达式
学习了
hjh811
2010-03-31
打赏
举报
回复
这个例子在马士兵的正则表达式那个视频里面有。。
(?=X),(?!x),(?<=x)(?!x)这几个我也忘记了 不常用的,写出来的正则表达式也费解,一般是可以用其他表达式来替代实现的
所以个人觉得可以忽略
《Google Android SDK开发范例大全(第3版)》.pdf
5.1 具有
正则表达式
的textview 179 5.2 action!call!拨打电话 180 5.3 自制发送短信程序 183 5.4 自制发送e-mail程序 187 5.5 自制日历手机数据库 190 5.6 手机振动的节奏 195 5.7 图文可视化...
Google Android SDK开发范例大全(第3版) 1/5
5.1 具有
正则表达式
的TextView 5.2 ACTION!CALL!拨打电话 5.3 自制发送短信程序 5.4 自制发送E-mail程序 5.5 自制日历手机数据库 5.6 手机振动的节奏 5.7 图文可视化提醒 5.8 状态栏的图标与文字提醒 5.9 搜索手机...
带你学会使用
正则表达式
内容简介:
正则表达式
,又称正规表示法、常规表示法(英语:Regular Expression,在代码中常简写为regex、regexp或RE)。计算机科学的一个概念。
正则表达式
使用单个字符串来描述、匹配一系列符合某个句法规则的字符串...
Google Android SDK开发范例大全(第3版) 4/5
5.1 具有
正则表达式
的TextView 5.2 ACTION!CALL!拨打电话 5.3 自制发送短信程序 5.4 自制发送E-mail程序 5.5 自制日历手机数据库 5.6 手机振动的节奏 5.7 图文可视化提醒 5.8 状态栏的图标与文字提醒 5.9 搜索手机...
Java SE
62,616
社区成员
307,307
社区内容
发帖
与我相关
我的任务
Java SE
Java 2 Standard Edition
复制链接
扫一扫
分享
社区描述
Java 2 Standard Edition
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章