今天是六一
小伙伴们节日快乐
(谁还不是个宝宝呢~)
今天娜娜给大家讲一个
关于正则表达式的故事
正则表达式的概述
正则表达式是指一个用来描述或者匹配一系列符合某个语法规则的字符串的单个字符串。其实就是一种规则。有自己特殊的应用。
作用:比如注册邮箱,邮箱有用户名和密码,一般会对其限制长度,这个限制长度的事情就是正则表达式做的
做一个小练习
校验qq号码
1:要求必须是5-15位数字
2:0不能开头
3:必须都是数字
两种实现方式:
a:非正则表达式实现
b:正则表达式实现
几行代码就解决了
是不是很方便
字符类
[abc]
a、b 或 c(简单类)
[^abc]
任何字符,除了 a、b 或 c(否定)
[a-zA-Z]
a到 z 或 A到 Z,两头的字母包括在内(范围)
[0-9]
0到9的字符都包括
[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](减去)
预定义字符类
. 任何字符
\d 数字:[0-9]
\D 非数字: [^0-9]
\s 空白字符:[ \t\n\x0B\f\r]
(\t(Tab键)\n(换行)\x0B(垂直制表符)\f(翻页)\r(回车))
\S 非空白字符:[^\s]
\w 单词字符:[a-zA-Z_0-9]
\W 非单词字符:[^\w]
数量词
X? X,一次或一次也没有
X* X,零次或多次
X+ X,一次或多次
X{n} X,恰好 n 次
X{n,} X,至少 n 次
X{n,m} X,至少 n 次,但是不超过 m 次
正则表达式的分割功能
public String[] split(String regex)
正则表达式的替换功能
public String replaceAll(String regex,String replacement)
正则表达式的分组功能
捕获组可以通过从左到右计算其开括号来编号。例如,在表达式 ((A)(B(C))) 中,存在四个这样的组:
1)((A)(B(C)))
2)(A
3)(B(C))
4)(C)
上面的看起来有点难理解哈~
咱们来演示一下
做一个小练习:
a:切割
请按照叠词切割: “abccdefffghoooojk”;
b:替换
需求:我我….我…我.爱…爱爱…爱学….学学..学.编..编编.编.程.程.程..程
将字符串还原成:“我爱学编程”。
正则表达式的获取功能
Pattern 和 Matcher 的结合使用
从一个字符串中的把手机号码获取出来
呼~
正则表达式就到这里了
小伙伴们再见了~
我是萌新娜娜
立志做一个不翻车的老司机
学习Java的路上请多多指教
免责声明:本站所有文章内容,图片,视频等均是来源于用户投稿和互联网及文摘转载整编而成,不代表本站观点,不承担相关法律责任。其著作权各归其原作者或其出版社所有。如发现本站有涉嫌抄袭侵权/违法违规的内容,侵犯到您的权益,请在线联系站长,一经查实,本站将立刻删除。 本文来自网络,若有侵权,请联系删除,如若转载,请注明出处:https://itzsg.com/74091.html