天天看点

JS和java正则表达式详解

正则表达式详解

    • 一、定义
    • 二、语法规则
    • 三、java中的正则(转义符\\)
      • 1、第一种写法
      • 2、第二种写法
    • 四、JS中的正则(转义符\)
      • 1、第一种写法
      • 2、第二种写法

一、定义

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

二、语法规则

. 任何一个字符

\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(“不符合条件”);

}

继续阅读