Java正则表达式

正则表达式中的特殊字符:

一、?

?是一个限定符,它代表它前面的字符“r”需要出现0次或者1次;
例子:

正则表达式:user?
字符串:user hava you use aaa bbb ccc
匹配结果:可以匹配到user和use

二、*

星号是一个限定符,可以匹配0个或者多个字符;
例子:

正则表达式:ab*c
字符串:	ac abc abbbc adc adddc abbbbc
匹配结果:ac abc abbbc abbbbc

三、+

ab+c
+是一个限定符,可以匹配出现一次以上的字符;
例子:

正则表达式: ab+c
字符串:ac abc abbbc adc adddc abbbbc
匹配结果:abc abbbc abbbbc

四、{}

{}可以精确匹配指定数量的字符,举例子说明:
指定b字符要连续出现六次,可以这样编写:

正则表达式:ab{6}c
字符串:ac abc abbbc adc adddc abbbbc abbbbbbc
匹配结果为:abbbbbbc

指定b字符要连续出现2-6次,可以这样编写:

正则表达式:ab{2,6}c
字符串:ac abc abbbc adc adddc abbbbc abbbbbbc
匹配结果为:abbbc  abbbbc  abbbbbbc

指定b字符要连续出现2次及以上,可以这样编写:

正则表达式:ab{2,}c
字符串:ac abc abbbc adc adddc abbbbc abbbbbbc
匹配结果为:abbbc  abbbbc  abbbbbbc

以上实现的都是一个字符的正则表达式。如果是多个字符,可以使用()将它括起来,再加限定符修饰,也就是把多个字符看成是一个整体即可。
例子:

正则表达式:a(bd){2,}c
字符串:ac abc abbbc adc adddc abbbbc abbbbbbc  abdbdbdc
匹配结果为:abdbdbdc

五、|

|是正则表达式的或运算,它和括号要一起使用
例子:

正则表达式:a (apple|pear)
字符串:an apple and a pear and a banana
匹配结果为:a pear

六、[ ]

[ ]是正则表达式的另一种运算,表示匹配的字符串只能取决于[ ]里面的内容
例子:

正则表达式:[abc]+
字符串: abc aabbccd aabbdddd abcbca
匹配结果: abc abcbca

同时可以在[ ]中指定范围,例子如下:

正则表达式:[a-zA-Z0-9]+   代表所有的英文字符和数字
字符串: abc aabbccd aabbdddd abcbca
匹配结果: abc aabbccd aabbdddd abcbca

在 [ ] 中写一个 ^ :代表要求匹配除了^后面列出的以外的字符;例子如下:

正则表达式:[^0-9]:代表所有的非数字字符,包含换行符
字符串:abc abc11 abcd122 12121 qqq
匹配结果:abc qqq

七、元字符

\d+ 等价于 [0-9]+

正则表达式:\d+:代表数字字符
字符串:abc19111abc 11
匹配结果:19111 11
正则表达式:\w+ 匹配英文、数字和下划线
字符串:abc19111abc_11,abc
匹配结果:abc19111abc_11 abc
正则表达式:^ab 匹配行首为ab的字符串
字符串:
acb
abc
匹配结果:ab
正则表达式:ab$ 匹配行尾为ab的字符串
字符串:
acb
abc
cab
caab
adb
匹配结果:cab caab 

更多见下表:
在这里插入图片描述

  • 3
    点赞
  • 13
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值