java的正则标记(来自java从入门到精通)

《java从入门到精通》学习笔记:

正则所有标记都在java.util.regex.Pattern类提供

1、字符,表示单个字符,只能出现1位

x : 表示是一个指定的一位字符,例如:编写0一个a,表示是字母a
\ : 表示一位字符“\”,但是由于“\”有个数含义,所以使用”\”表示一位“\”
\n : 换行

2、字符范围,在指定的字符范围之中选1位,只能出现1位

[abc] : 表示可以是abc中的任意一位
[^abc] : 表示不是abc中的任意一位
[a-zA-Z] : 表示是任意一位字母,大写或小写
[0-9] : 表示是任意一位数字

3、简洁表达式,表示1位

. : 表示任意的一位字符
\d : 表示一位数字,等价于“[0-9]”
\D : 表示一位非数字,等价与“[^0-9]”
\s : 表示一位空格
\S : 表示一位非空格
\w : 表示一位字母、数字、_
\W: 表示一位非字母、数字、_

4、数量表示,之前的正则每个符合只表示一位,如果要表示多为,则必须使用以下的数量关系

? : 表示此正则可以出现0次或1次
+ : 表示此正则可以出现1次或多次
* : 表示此正则可以出现0次,1次或多次
{n}: 表示此正则正好出现n次
{n,}: 表示此正则出现n次以上
{n,m} : 表示此正则出现n~m次

5、逻辑操作

正则1正则2正则3正则4正则5正则6正则7正则8正则9 : 正则1之后连续跟着正则2…的操作
正则1 | 正则2 : 表示或的关系,有一套正则标记匹配即可
(正则) : 表示按照一组来使用。

例子:

String str = "a1b2c3d44444e555f666g";
String regex = "[0-9]+";//数字出现1次或多次
String regex2 = "\\d+";//数字出现1次或多次

str.replaceAll(regex,"");//使用正则替换指定字符串为""空字符串
结果:  abcdefg

String str = "hhxx@163.com";//邮箱
String regex3 = "\\w+@\\w+.\\w+";//验证邮箱

str.matches(regex);//验证是否符合正则表达式
结果: true
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值