黑马程序员 正则表达式
来源:互联网 发布:windows rt刷系统 编辑:程序博客网 时间:2024/06/03 21:28
------Java培训、Android培训、iOS培训、.Net培训、期待与您交流! -------
一、正则表达式:
就是符合一定规则的表达式。它是对字符串操作的一种逻辑公式,就是用事先定义好的一些特定字符、及这些特定字符的组合,组成一个“规则字符串”,这个“规则字符串”用来表达对字符串的一种过滤逻辑。
作用:专门用来操作字符串的。
特点:用一些特定的符号来表示一些代码操作,这样就简化书写。所以学习正则表达式,就是在学习一些特殊符号的使用。
好处:可以简化对字符串的复杂操作。
弊端:符号定义越多,正则越长,阅读性越差。
二、常见正则表达式
说明:X表示字符X或者匹配的规则。
1、字符
x 字符 x
\\ 反斜线字符
\t 制表符 ('\u0009')
\n 新行(换行)符 ('\u000A')
\r 回车符 ('\u000D')
\f 换页符 ('\u000C')
\a 报警 (bell) 符 ('\u0007')
2、字符类
[abc] a、b或 c(简单类)
[^abc] 任何字符,除了 a、b或 c(否定)
[a-zA-Z] a到 z或 A 到 Z,两头的字母包括在内(范围)
[a-d[m-p]] a到 d或 m 到 p:[a-dm-p](并集)
[a-z&&[def]] d、e或 f(交集)
[a-z&&[^bc]] a到 z,除了 b和 c:[ad-z](减去)
[a-z&&[^m-p]] a到 z,而非 m到 p:[a-lq-z](减去)
3、预定义字符类
. 任何字符(与行结束符可能匹配也可能不匹配)
\d 数字:[0-9]
\D 非数字: [^0-9]
\s 空白字符:[ \t\n\x0B\f\r]
\S 非空白字符:[^\s]
\w 单词字符:[a-zA-Z_0-9]
\W 非单词字符:[^\w]
4、边界匹配器
^ 行的开头
$ 行的结尾
\b 单词边界
\B 非单词边界
\A 输入的开头
\G 上一个匹配的结尾
\Z 输入的结尾,仅用于最后的结束符(如果有的话)
\z 输入的结尾
三、具体操作功能:
就匹配失败。
2、切割:String split();3、替换:String replaceAll();
四、正则表达式的第四个功能:
4、获取:将字符串中符合规则的子串取出。
操作步骤:
1、将正则表达式封装成对象
2、让正则对象和要操作的字符串相关联
3、关联后,获取正则匹配引擎。
4、通过引擎对符合规则的子串进行操作。比如取出。
练习操作
五、正则表达式编程常用规则
1、上来不用说,先定义自己要操作的“字符串”和“正则规则”
String str=“我是一个字符串”;
String reg=“我是正则表达式”;
2、然后将正则规则封装成对象,使用的是(“pattern”样式的意思,“compile”编译的意思)
Pattern p=Pattern.compile(reg);
返回的是Pattern类型的数据
3、然后将“字符串“和”规则“进行关联
Matcher m=p.matcher(字符串);
4、使用while循环进行遍历,里面使用的是Matcher类创建的对象m调用自身方法find()返回的是boolean类型。
while(m.find()){
System.out.println(m.group()); //调用group方法返回的是满足条件的String类型的结果
}
六、网页爬虫
制作一个可以将一个网页或者指定文件中的全部的邮箱读取出来打印到控制台上。
- 黑马程序员-正则表达式
- 黑马程序员 正则表达式
- 黑马程序员:正则表达式
- 黑马程序员---正则表达式
- 黑马程序员:正则表达式
- 黑马程序员--正则表达式
- 黑马程序员--正则表达式
- 黑马程序员--正则表达式
- 黑马程序员--正则表达式
- 黑马程序员 正则表达式
- 黑马程序员-正则表达式
- 黑马程序员:正则表达式
- 黑马程序员-正则表达式
- 黑马程序员 正则表达式
- 黑马程序员---正则表达式
- 黑马程序员---正则表达式
- 黑马程序员-正则表达式
- 黑马程序员--正则表达式
- java跳转外部友情链接,去除链接前的Java工程名
- POJ - 3111 K Best 平均值最大(01分数规划)
- StringBuffer类常见方法
- Eclipse 配置Servers及运行
- DB2 常用日期
- 黑马程序员 正则表达式
- 去除List列表中重复值(3种解决方法)
- 自适应弹出框-垂直居中
- JAVA 创建TXT文件,写入文件内容,读取文件内容
- Collections,泛型,File,IO流,字节/符输入输出流
- SpringMVC的简单示例
- linux动态库版本号管理
- PIT测试记录【疑难解决】
- Single Number 异或求单独数