JS和java正则表达式详解

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/tangyuzhidao/article/details/85062425

一、定义

正则表达式是一种基于字符串的语法规则,是一种可以用于模式匹配和替换的规则,主要用于文本和字符串的处理。它是一些特殊意义的字符组成的字符串,这些具有特殊意义的字符叫元字符。

二、语法规则

. 任何一个字符
\d 0-9的任何一个数字
\D 任何一个非数字字符
\s 空格类字符
\S 非空格类字符
\w 可用于标识的字符(不含$)英文字母、数字、下划线
\W 不能用于标识的字符
\p{Lower} 小写字母【a-z】
\p{Upper} 大写字母【A-Z】
\p{ASCII} ASCII字符
\p{Alpha} 字母
\p{digit} 数字字符【0-9】
\p{Alnum} 字母或数字
\p{ Punct} 标点符号
\p{graph} 可视字符
\p{Print} 可打印字符
\p{Blank} 空格或制表符
\p{Cntrl} 控制字符

[ ] 中的元字符含义
[abcde] 匹配a、b、c、d、e中的任意一个字符。
[a-h] 匹配a-h中的任意一个字符。
[^abcde] 不与a、b、c、d、e中的任意一个字符匹配。
交叉运算
[a-d[m-p]] 匹配a-d、m-p中的任意一个字符(并集)。
[a-z&&[def]] 匹配d、e、f中的任意一个字符(交集)。
[b-z&&[^def]] 不匹配d、e、f中的任意一个字符(差集)。
限定符
X? 0次或1次 X{n,} 至少出现n次
X* 0次或多次 X{n,m} n次到m次
x+ 1次或多次 XY X后跟Y
X{n} x出现n次 X|Y X或Y

三、java中的正则(转义符\)

1、第一种写法

String str = “待验证文本”;
String regular = “这里是正则表达式”;
if (Pattern.compile(regular).matcher(str).matches()) {
System.out.println(“符合条件”);
} else {
System.out.println(“不符合条件”);
}

2、第二种写法

String str = “待验证文本”;
if (str.matches(“这里是正则表达式”)) {
System.out.println(“符合条件”);
} else {
System.out.println(“不符合条件”);
}

四、JS中的正则(转义符\)

1、第一种写法

var str = “待验证文本”;
var regular = new RegExp(/这里是正则表达式/);
if (regular.test(str)) {
console.log(“符合条件”);
} else {
console.log(“不符合条件”);
}

2、第二种写法

var str = “待验证文本”;
if (/这里是正则表达式/.test(str)) {
console.log(“符合条件”);
} else {
console.log(“不符合条件”);
}

猜你喜欢

转载自blog.csdn.net/tangyuzhidao/article/details/85062425