正则表达式

正则表达式用来检测一个字符串中是否含有某个子串(java中用str.matches(匹配规则))
位置以0为起始值(0,pos)

\d
任意一个数字,0~9 中的任意一个
\w
任意一个字母或数字或下划线,也就是 A~Z,a~z,0~9,_ 中任意一个
\s
包括空格、制表符、换页符等空白字符的其中任意一个
.
小数点可以匹配除了换行符(\n)以外的任意一个字符

[f-k]
匹配 “f”~”k” 之间的任意一个字母
[^A-F0-3]
匹配 “A”~”F”,”0”~”3” 之外的任意一个字符

{n}
表达式重复n次,比如:”\w{2}” 相当于 “\w\w”;”a{5}” 相当于 “aaaaa”
{m,n}
表达式至少重复m次,最多重复n次,比如:”ba{1,3}”可以匹配 “ba”或”baa”或”baaa”
{m,}
表达式至少重复m次,比如:”\w\d{2,}”可以匹配 “a12”,”_456”,”M12344”…
?
匹配表达式0次或者1次,相当于 {0,1},比如:”a[cd]?”可以匹配 “a”,”ac”,”ad”
+
表达式至少出现1次,相当于 {1,},比如:”a+b”可以匹配 “ab”,”aab”,”aaab”…
*
表达式不出现或出现任意次,相当于 {0,},比如:”\^*b”可以匹配 “b”,”^^^b”…

^
与字符串开始的地方匹配,不匹配任何字符
$
与字符串结束的地方匹配,不匹配任何字符
\b
匹配一个单词边界,也就是单词和空格之间的位置,不匹配任何字符

|
左右两边表达式之间 “或” 关系,匹配左边或者右边
( )
(1). 在被修饰匹配次数的时候,括号中的表达式可以作为整体被修饰
(2). 取匹配结果的时候,括号中的表达式匹配到的内容可以被单独得到,或作为后面的引用
例: 举例7:表达式 “¥(\d+.?\d*)” 在匹配 “$10.9,¥20.5” 时,匹配的结果是:成功;匹配到的内容是:”¥20.5”;匹配 到的位置是:开始于6,结束于10。单独获取括号范围匹配到的内容是:”20.5”。

几条规则:

1.{m},{m,n},{m,},?,+以及*总是尽可能匹配最多(被修饰部分可以变)
例: “\w\d{2,}”可以匹配 “a12”

2.若在1中再加一个?,则表示尽可能少的匹配

3.当使用()时,后面的匹配表达式可以引用()中匹配到的内容(形式:\1,\2),以左括号为排序编号
例: 表达式 “(‘|”)(.*?)(\1)” 在匹配 ” ‘Hello’, “World” ” 时,匹配结果是:成功;匹配到的内容是:” ‘Hello’ “。再次匹配下一个时,可以匹配到 ” “World” “。

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值