没有合适的资源?快使用搜索试试~ 我知道了~
JAVA正则表达式实例教程.pdf
5星 · 超过95%的资源 需积分: 10 33 下载量 134 浏览量
2008-12-11
21:18:35
上传
评论
收藏 225KB PDF 举报
温馨提示
试读
17页
Matcher类提供三个匹配操作方法,三个方法均返回boolean类型,当匹配到时返回true,没匹配到则返回false ①m.matches() matches()对整个字符串进行匹配,只有整个字符串都匹配了才返回true ②m.lookingAt() lookingAt()对前面的字符串进行匹配,只有匹配到的字符串在最前面才返回true ③m.find() find()对字符串进行匹配,匹配到的字符串可以在任何位置
资源推荐
资源详情
资源评论
JAVA 正则表达式实例教程 12/11/2008
JAVA
正则表达式实例教程
Nick
Shanghai China
Kandk522@hotmail.com
2008-12-12
So many open source projects. Why not Open your Documents?
1
JAVA 正则表达式实例教程 12/11/2008
1
、 正则表达式的知识要点
1
、 正则表达式是什么?
正则表达式是一种可以用于模式匹配和替换的强有力的工具。
2
、 正则表达式的优点?
更少的代码,更高的效率。
3
、 正则表达式如何使用?
在下面的教程中我们将学习到正则表达式的用法。
4
、 正则表达式的缺点?
需要花一定的时间学习,这个时间由个人决定,一天或者更久一些。
2
、 正则表达式的各种符号及其含义
常用的符号
.
表示任意一个字符
\s
空格字符(空格键, tab, 换行, 换页, 回车)
\S
非空格字符([^\s])
\d
一个数字,(相当于[0-9] )
\D
一个非数字的字符,(相当于[^0-9] )
\w
一个单词字符(word character) (相当于 [a-zA-Z_0-9] )
\W
一个非单词的字符,[^\w]
^
一行的开始
$
一行的结尾
\b
一个单词的边界
\B
一个非单词的边界
\G
前一个匹配的结束
[]
匹配方括号内的一个字符
例如:[abc] 表示字符 a,b,c 中的任意一个(与 a|b|c 相同)
[a-zA-Z]
表示从
a
到
z
或
A
到
Z
当中的任意一个字符
表示次数的符号
*
重复零次或更多次
例如:a* 匹配零个或者多个 a
+
重复一次或更多次
例如:a+ 匹配一个或者多个 a
?
重复零次或一次
例如:a? 匹配零个或一个 a
{n}
重复 n 次
例如:a{4} 匹配 4 个 a
{n,}
重复 n 次或更多次
例如:a{4,} 匹配至少 4 个 a
{n,m}
重复 n 到 m 次
例如:a{4,10} 匹配 4~10 个 a
2
JAVA 正则表达式实例教程 12/11/2008
3
、 正则表达式实例
java
正则表达式通过
java.util.regex
包下的
Pattern
类与
Matcher
类实现:
1
、首先引入
java
包:
java.util.regex
2
、使用方法如下:
共分三步:
①构造一个模式
.
Pattern p=Pattern.compile("[a-z]*");
②建造一个匹配器
Matcher m = p.matcher(str);
③进行判断,得到结果
boolean b = m.matches()
;
Matcher 类提供三个匹配操作方法,三个方法均返回 boolean 类型,当匹配到
时返回 true,没匹配到则返回 false
①
m.matches()
matches()
对整个字符串进行匹配
,
只有整个字符串都匹配了才返回
true
②
m.lookingAt()
lookingAt()
对前面的字符串进行匹配
,
只有匹配到的字符串在最前面才返
回
true
③
m.find()
find()
对字符串进行匹配
,
匹配到的字符串可以在任何位置
Matcher 类的其他方法
int groupcount()
返回此匹配器模式中的捕获组数。
String replaceAll(String replacement)
用给定的
replacement
全部替代匹配的
部分
String repalceFirst(String replacement)
用给定的
replacement
替代第一次匹
配的部分
appendReplacement(StringBuffer sb,String replacement)
根 据 模 式 用
replacement
替换相应内容
,
并将匹配的结果添加到
sb
当前位置之后
StringBuffer appendTail(StringBuffer sb)
将输入序列中匹配之后的末尾字串
添加到
sb
当前位置之后
.
group(n) 0
代表永远都是匹配整个表达式的字符串的那部分
n<>0
时代表
第
n
组匹配的部分
① 字符匹配
Pattern p = Pattern.compile(expression); //
正则表达式
Matcher m = p.matcher(str); //
操作的字符串
boolean b = m.matches(); //
返回是否匹配的结果
System.out.println(b);
Pattern p = Pattern.compile(expression); //
正则表达式
3
JAVA 正则表达式实例教程 12/11/2008
Matcher m = p.matcher(str); //
操作的字符串
boolean b = m. lookingAt (); //
返回是否匹配的结果
System.out.println(b);
Pattern p = Pattern.compile(expression); //
正则表达式
Matcher m = p.matcher(str); //
操作的字符串
boolean b = m..find (); //
返回是否匹配的结果
System.out.println(b);
② 分割字符串
Pattern pattern = Pattern.compile(expression); //
正则表达式
String[] strs = pattern.split(str); //
操作字符串 得到返回的字符串数组
③ 替换字符串
Pattern p = Pattern.compile(expression); //
正则表达式
Matcher m = p.matcher(text); //
操作的字符串
String s = m.replaceAll(str); //
替换后的字符串
④ 查找替换指定字符串
Pattern p = Pattern.compile(expression); //
正则表达式
Matcher m = p.matcher(text); //
操作的字符串
StringBuffer sb = new StringBuffer();
int i = 0;
while (m.find()) {
m.appendReplacement(sb, str);
i++; //
字符串出现次数
}
m.appendTail(sb);//
从截取点将后面的字符串接上
String s = sb.toString();
⑤ 查找输出字符串
Pattern p = Pattern.compile(expression); //
正则表达式
Matcher m = p.matcher(text); //
操作的字符串
while (m.find()) {
//m.start()
返回匹配到的子字符串在字符串中的索引位置
.
//m.end()
返回匹配到的子字符串的最后一个字符在字符串中的索引位置
.
//m.group()
返回匹配到的子字符串
}
4
剩余16页未读,继续阅读
资源评论
- yanglijunlilinhan2012-12-24不错 对于正则入门很有用~~
- wysphq2012-10-31对于java 正则表达式入门的同学不错,不过该pdf文档中第5页3.1匹配字符串(matches()方法)的例子中,输出结果的注释标注相反了,文中输出结果分别是: 匹配结果:true 匹配结果:false 但是,正确的因为: 匹配结果:false 匹配结果:true
kandk522
- 粉丝: 3
- 资源: 6
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
最新资源
- note test a bc d e f g h
- MERGE.csv.zip
- 15白落梅:你是锦瑟我为流年:三毛的万水千山-3491776.mobi
- 微信小程序源码 实现 城市切换 demo 根据城市首字母排序城市 选择城市
- 12因为懂得 所以慈悲-张爱玲的倾城往事 (白落梅经典散文系列)-3321089.mobi
- 基于 C# 实现的串口温度监控软件
- 基于STM32F103RBT6单片机+SIM868自动收货机主控板硬件(原理图+PCB)工程文件.zip
- 微信小程序源码 车源宝 二手车交易平台 源码下载
- 专注于在线教育领域,打造更好的网课系统,网校系统,知识付费系统
- ADM487EARZ-REEL7 产品规格书pdf
资源上传下载、课程学习等过程中有任何疑问或建议,欢迎提出宝贵意见哦~我们会及时处理!
点击此处反馈
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功