加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

正则表达式知识详解之基础知识 (java版示例)

发布时间:2020-12-14 04:26:15 所属栏目:百科 来源:网络整理
导读:正则表达式知识详解系列,通过代码示例来说明正则表达式知识,建议自己按照例子手打一遍。 本示例的源代码下载地址:http://download.csdn.net/detail/gnail_oug/9504094 // .表示除换行符以外的任意字符System.out.println("a".matches("."));//输出trueSys

正则表达式知识详解系列,通过代码示例来说明正则表达式知识,建议自己按照例子手打一遍。

本示例的源代码下载地址:http://download.csdn.net/detail/gnail_oug/9504094



// .表示除换行符以外的任意字符
System.out.println("a".matches("."));//输出true
System.out.println("1".matches("."));//输出true
System.out.println(" ".matches("."));//输出true
System.out.println("t".matches("."));//输出true
System.out.println("abc".matches(".bc"));//输出true

// d匹配数字[0-9]  digit单词的首字符,小写表示是,大写表示非
System.out.println("1".matches("d"));//输出true
System.out.println("a".matches("d"));//输出false

// D匹配非数字[^0-9]
System.out.println("1".matches("D"));//输出false
System.out.println("a".matches("D"));//输出true

// s匹配空白字符[ tnx0Bfr]  space单词的首字符,小写表示是,大写表示非
System.out.println(" ".matches("s"));//输出true
System.out.println("t".matches("s"));//输出true
System.out.println("n".matches("s"));//输出true
System.out.println("a".matches("s"));//输出false

// S匹配非空白字符[^s]
System.out.println("------");
System.out.println(" ".matches("S"));//输出false
System.out.println("t".matches("S"));//输出false
System.out.println("n".matches("S"));//输出false
System.out.println("a".matches("S"));//输出true

// w匹配单词字符[a-zA-Z_0-9]   word单词的首字符,小写表示是,大写表示非
System.out.println("------");
System.out.println(" ".matches("w"));//输出false
System.out.println("a".matches("w"));//输出true
System.out.println("1".matches("w"));//输出true
System.out.println("A".matches("w"));//输出true
System.out.println("t".matches("w"));//输出false

// ^匹配行的开头
//匹配以a开头的字符串
System.out.println("abc".matches("^a.*"));//输出true
System.out.println("abc".matches("^b.*"));//输出false

// $匹配行的开头
//匹配以a结尾的字符串
System.out.println("bca".matches(".*a$"));//输出true
System.out.println("bca".matches(".*b$"));//输出false

// *匹配前面的子表达式零次或多次
System.out.println("bca".matches(".*"));//输出true
System.out.println("bca".matches("b.*"));//输出true
System.out.println("bca".matches("d*bca"));//输出true

// +匹配前面的子表达式一次或多次
System.out.println("bca".matches(".+ca"));//输出true
System.out.println("bca".matches("b.+"));//输出true
System.out.println("bca".matches("d+bca"));//输出false

// ?匹配前面的子表达式零次或一次
System.out.println("aab".matches("a?aab"));//输出true
System.out.println("aab".matches("a?ab"));//输出true
System.out.println("aab".matches("a?b"));//输出false

// {n}匹配前面的子表达式确定的 n次,n是一个非负整数。
System.out.println("aab".matches("a{2}b"));//输出true
System.out.println("aab".matches("a{1}ab"));//输出true
System.out.println("aab".matches("a{1}b"));//输出false

// {n,}匹配前面的子表达式至少n次,n是一个非负整数。
System.out.println("aab".matches("a{2,}b"));//输出true
System.out.println("aab".matches("a{1,}ab"));//输出true
System.out.println("aab".matches("a{1,}b"));//输出true
System.out.println("aaaaaab".matches("a{1,}b"));//输出true

// {n,m}匹配前面的子表达式至少n次且最多m次,n和m都是非负整数,其中n <= m
System.out.println("aab".matches("a{1,2}b"));//输出true
System.out.println("aab".matches("a{1,2}ab"));//输出true
System.out.println("aaab".matches("a{1,2}b"));//输出false
System.out.println("aaaaaab".matches("a{1,2}b"));//输出false

// | 或者,如:x|y匹配x或者y
System.out.println("a".matches("a|b"));//输出true
System.out.println("b".matches("a|b"));//输出true
System.out.println("c".matches("a|b"));//输出false

// []字符集合,匹配所包含的任意一个字符,如[xyz]匹配x或y或z
System.out.println("a".matches("[abc]"));//输出true
System.out.println("b".matches("[abc]"));//输出true
System.out.println("c".matches("[abc]"));//输出true
System.out.println("d".matches("[abc]"));//输出false

// [^]非字符集合,匹配未包含的任意字符,如[xyz]匹配不是x并且不是y并且不是z的字符
System.out.println("a".matches("[^abc]"));//输出false
System.out.println("b".matches("[^abc]"));//输出false
System.out.println("c".matches("[^abc]"));//输出false
System.out.println("d".matches("[^abc]"));//输出true

// [a-z]字符范围,匹配指定范围内的任意字符
System.out.println("a".matches("[a-c]"));//输出true
System.out.println("b".matches("[a-c]"));//输出true
System.out.println("c".matches("[a-c]"));//输出true
System.out.println("d".matches("[a-c]"));//输出false

// [^a-z]非字符范围,匹配任何不在指定范围内的任意字符
System.out.println("a".matches("[^a-c]"));//输出false
System.out.println("b".matches("[^a-c]"));//输出false
System.out.println("c".matches("[^a-c]"));//输出false
System.out.println("d".matches("[^a-c]"));//输出true

// b匹配单词边界,也就是指单词和空格间的位置。 boundary单词的首字符,小写表示是,大写表示非
System.out.println("name".matches(".*meb"));//输出true
System.out.println("mean".matches(".*meb"));//输出false

// B匹配非单词边界,也就是指不匹配单词和空格间的位置。
System.out.println("name".matches(".*meB.*"));//输出false
System.out.println("mean".matches(".*meB.*"));//输出true

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读