正则表达式

所谓正则表达式,由一些特定的字符组成,代表的是一个规则。作用如下:
(1)用来校验数据格式是否合法
(2)在一段文本中查找满足要求的内容
(3)用于搜索替换、分割内容

String类提供了matches方法,判断字符串是否匹配正则表达式。

符号含义举例
?0次或1次\\d?
*0次或多次\\d* (abc)*
+1次或多次\\d+ (abc)+
{}具体次数{7,19}
(?i)忽略后面字符的大小写(?i)abc
a((?i)b)c只忽略b的大小写a((?i)b)c
[]里面的内容出现一次[abc]
^取反[^abc]
&&交集,不能写单个的&[a-z&&m-p]
.任意字符\n 回车符号不匹配
\转义字符\\d
\\d0-9\\d+
\\D非0-9\\D+
\\s空白字符
\\S非空白字符[^\s]
\\w单词字符[a-zA-Z_0-9]
\\W非单词字符[^\w]
()分组a(bc)+
|写在方括号外面表示并集ab|AB

案例:

String data =“电话:18621312888186231231777\n” +“或者联系邮箱:boniu@itcast.cn,\n” +“座机电话:010097423895010-98951256\n” +        “邮箱:7826448211@qq.com,\n” +“邮箱2:dlei0009@163.com,\n” +        “热线电话:401-638-9090400-618-499040023120004002356890;
//1.定义爬取规则(正则表达式)
String regex =(\\w{1,}@\\w{2,10}(\\.\\w{2,10}){1,2})|+(1[3-9]\\d{9})|(0\\d{2,5}-?\\d{5,15})|400-?\\d{3,8}-?\\d{3,8};
// 2.把正则表达式封装成一个Pattern对象
Pattern pattern = Pattern.compile(regex);
// 3.通过pattern对象得到查找内容的匹配器
Matcher matcher = pattern.matcher(data);
// 4.通过匹配器开始去内容中查找信息
while(matcher.find()){    
	System.out.println(matcher.group()); //取出信息
}

来源:黑马课程

  • 10
    点赞
  • 11
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

kk变色龙13

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值