正则表达式(java)

一、正则表达式简介

正则表达式是一个很常见的技术,用于在各种字符串的规则匹配中

二、在Java中使用正则表达式

我们需要匹配的都是字符串,很方便地是java内置了正则表达式匹配的函数即String实例的matches(String regx)方法,参数是匹配的规则

三、匹配规则

1、入门

(1)字符类

  • 任意字符:用“.”表示一个任意字符,比如"a.c"就表示的就是以a开头以c结尾中间有一个任意字符的字符串
  • 常用字符:常用字符有三种:数字、英文和下划线,用"\w"表示一个常用字符
  • 空格符:空格符有两种:空格和tab,用“\s”表示一个空格符

(2)数字

  • 数字:用"\d"表示一个数字
  • 非数字:用“\D”表示一个非数字

(3)多重匹配

上面的都是匹配的单个的字符或数字,而这种匹配在应用中过于单一且麻烦,下面介绍几个多重匹配的情形

  • 匹配任意个字符:在匹配单个字符的后面加上"*****"代表任意个这种字符
  • 匹配至少一个字符:在匹配单个字符后面加上“+”表示至少有一个这种字符
  • 匹配最多一个字符:在匹配单个字符后面加上“”表示至多有一个这种字符
  • 匹配指定个数个字符:在匹配单个字符后面加上“{n}”表示有n个这种字符
  • 匹配指定范围个数的字符:在匹配单个字符后面加上“{n,m}”表示有n~m个这种字符

2、高级

(1)开头和结尾

在匹配规则前面加上“^”或“$”表示以这个规则为开头或结尾

(2)范围匹配

用中括号"[]"括起来的表示匹配这个范围之内的,下面是常用的三种范围

  • [0-9]:匹配数字0-9
  • [a-z]:匹配小写英文字母
  • [A-Z]:匹配大写英文字母

如果在最开头加上“^”表示非此范围内匹配

(3)或匹配以及括号匹配

如果使用“|”将字符串或匹配规则分开,代表匹配其中的一种情况,一般和"()”配合使用
wwww

©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

友情链接更多精彩内容