java中必背正则标记
来源:互联网 发布:apache maven 编辑:程序博客网 时间:2024/06/01 20:49
所有的正则可以使用的标记都在java.util.regex.Pattern类中。我们打开这个类文档可以看到有好多的标记,难道都要记?当然不是,我们只需记住一些比较常用的就行了。下面我们一起来看一下:
1.单个字符(数量:1)
字符(x):表示由一位字符所组成。如:
public class Text {public static void main(String[] args) {String str="t";System.out.println(str.matches("t"));String str1="tt";System.out.println(str1.matches("t"));String str2="t";System.out.println(str2.matches("x"));}}结果如下;
truefalsefalse\\:表示转义字符“\”。
\t:表示一个“\t”符号。
\n:匹配换行符号“\n”。
2.字符集(数量:1)
[abc]:表示可能是字符a或则字符b或则字符c中任意一位。如:
public class Text{public static void main(String[] args) {String str="a";System.out.println(str.matches("[abc]"));String str1="x";System.out.println(str1.matches("[abc]"));}}结果如下:
truefalse[^abc]:表示不是字符a,b,c中任意一位。如:
public class Text{public static void main(String[] args) {String str="a";System.out.println(str.matches("[^abc]"));String str1="x";System.out.println(str1.matches("[^abc]"));String str2="ab";System.out.println(str2.matches("[^abc]"));}}结果如下:
falsetruefalse[a-z]:表示所有的小写字母。
[a-zA-Z]:表示任意的一位字母,不区分大小写。如:
public class Text{public static void main(String[] args) {String str="a";System.out.println(str.matches("[a-z]"));String str1="x";System.out.println(str1.matches("[a-zA-Z]"));String str2="c";System.out.println(str2.matches("[a-z]"));String str3="D";System.out.println(str3.matches("[a-zA-Z]"));String str4="ab";System.out.println(str4.matches("[a-zA-Z]"));}}结果如下:
truetruetruetruefalse[0-9]:表示任意的一位数字。如:
public class Text {public static void main(String[] args) {String str="5";System.out.println(str.matches("[0-9]"));String str1="11";System.out.println(str1.matches("[0-9]"));}}结果如下;
truefalse3.简化的字符集(数量:1)
.:表示任意的一位字符。如:
public class Text {public static void main(String[] args) {String str="5";System.out.println(str.matches("."));String str1="11";System.out.println(str1.matches("."));String str2="c";System.out.println(str2.matches("."));String str3="[";System.out.println(str3.matches("."));}}如果如下:
truefalsetruetrue\d:等价于:[0-9]。
\D:等价于:[^0-9]。如:
public class Text {public static void main(String[] args) {String str="5";System.out.println(str.matches("\\d"));String str1="11";System.out.println(str1.matches("\\d"));}}结果如下:
truefalse\s:表示任意的空白字符,如:"\t","\n"。
\S:表示任意的非空白字符。
\w:等价于“[a-zA-Z_0-9]”,表示由任意的字母,数字,_所组成。
\W:等价于“[^a-zA-Z_0-9]”,表示不是由任意的字母,数字,_所组成。如:
public class Text {public static void main(String[] args) {String str="5";System.out.println(str.matches("[a-zA-Z_0-9]"));String str1="11";System.out.println(str1.matches("[a-zA-Z_0-9]"));String str2="c";System.out.println(str2.matches("[a-zA-Z_0-9]"));String str3="D";System.out.println(str3.matches("[a-zA-Z_0-9]"));String str4="_";System.out.println(str4.matches("[a-zA-Z_0-9]"));}}结果如下:
truefalsetruetruetrue4.数量表达
正则?:表示此正则可以出现一次或0次。如:
public class Text {public static void main(String[] args) {String str="1";System.out.println(str.matches("1?"));String str1="";System.out.println(str1.matches("1?"));String str2="11";System.out.println(str2.matches("1?"));}}如果如下:
truetruefalse正则+:表示此正则可以出现一次或一次以上。如:
public class Text {public static void main(String[] args) {String str="1";System.out.println(str.matches("1+"));String str1="";System.out.println(str1.matches("1+"));String str2="11";System.out.println(str2.matches("1+"));String str3="1111111";System.out.println(str3.matches("1+"));}}结果如下:
truefalsetruetrue正则*:表示此正则可以出现0次一次或多次。如:
public class Text {public static void main(String[] args) {String str="1";System.out.println(str.matches("1*"));String str1="";System.out.println(str1.matches("1*"));String str2="11";System.out.println(str2.matches("1*"));String str3="1111111";System.out.println(str3.matches("1*"));}}结果如下:
truetruetruetrue正则{n}:表示此正则刚好出现n次。如:
public class Text {public static void main(String[] args) {String str="1";System.out.println(str.matches("1{2}"));String str1="";System.out.println(str1.matches("1{2}"));String str2="11";System.out.println(str2.matches("1{2}"));}}结果如下:
falsefalsetrue正则{n.}:表示此正则出现n次以上(包含n次)。
正则{n.m}:表示此正则出现n-m次。
5.逻辑运算
正则1正则2:正则1判断完之后继续判断正则2。
正则1|正则2:正则1或则正则2有一组满足即可。
(正则):将多个正则作为一组,可以为这一组单独设置出现的次数。
如:
public class Text {public static void main(String[] args) {String str="12";System.out.println(str.matches("12"));String str1="1";System.out.println(str1.matches("1|2"));String str2="1249749612";System.out.println(str2.matches("(12){2}"));}}结果如下:
truetruefalse
阅读全文
0 0
- java中必背正则标记
- Java 正则表达式去除HTML标记
- Java学习提要——正则表达式(正则标记)
- 正则 去除html标记
- java的正则标记(来自java从入门到精通)
- 匹配html标记的正则
- 匹配html标记的正则
- 匹配所有html标记 正则
- 正则表达式处理xml标记
- 正则表达式标记速查
- 正则表达式Pattern的标记
- 正则表达式——正则标记
- JavaDoc标记(Java文本标记)定义
- JavaDoc标记(Java文本标记)定义
- Java中的标记接口和标记注解
- Java标记接口
- java标记接口
- java标记接口
- 0731-Java数组
- HDU 6050 Funny Function
- 7.31网络讲座总结
- Find The Multiple POJ
- python学习-面向对象进阶之私有化(六)
- java中必背正则标记
- QT文件操作
- Java字符串工具简单操作类
- 实现高德地图定位
- MQactive
- 类与类的关系
- CSU 1562 Fun House(直线搜索)
- 洛谷P1006传纸条题解
- python学习-面向对象进阶之属性property(七)