正则表达式
什么是正则表达式?
-
介绍:正则表达式是构成*搜索模式(search pattern)*的字符序列。
当您搜索文本中的数据时,您可使用搜索模式来描述您搜索的内容。
正则表达式可以是单字符,或者更复杂的模式。
正则表达式可用于执行所有类型的文本搜索 和文本替换操作。
-
作用:通常用来验证数据格式、查找替换文本等。
-
定义::
-
正则表达式字面量(注意不要加引号)
JSconst reg1 = /abc/;
-
创建正则对象RegExp
jsconst reg2 = new RegExp('abc');
-
-
方法:
test(str):判断指定字符串是否符合规则,符合返回true;不符合返回false。
-
语法:
-
普通字符:大多数的字符仅能描述它们本身,这些字符称作普通字符,比如字母和数字。
-
特殊字符:是一些具有特殊含义的字符,可以极大提高了灵活性和强大的匹配功能。
-
量词:表示要匹配的字符或表达式的数量。
-
符号 | 含义 |
---|---|
^ | 表示以谁开始 |
$ | 表示以谁结束 |
[ ] | 表示某个范围内的单个字符,如:[0-9]单个数字字符 |
. | 表示任意单个字符,除了换行和行结束符 |
\w | 代表单词字符:字母、数字、下划线(),相当于[A-Za-z0-9] |
\d | 代表数字字符:相当于[0-9] |
\s | 代表空格(包括换行符、制表符、空格等) |
符号 | 含义 |
---|---|
? | 零个或一个 |
* | 零个或多个 |
+ | 一个或多个 |
{n} | n个 |
{m,} | 至少m个 |
{m,n} | 至少m个,最多n个 |
示例:
js
<script>
let str1 = 'hello World';
let str2 = '二哈很二o';
let str3 = 'er哈就是很二o';
let str4 = '二哈就是很二';
console.log(/\w+/.test(str1)); //true
console.log(/\w+/.test(str2)); //true
console.log(/\w+/.test(str3)); //true
console.log(/\w+/.test(str4)); //false
const reg1 = /abc/;
const reg2 = new RegExp('abc');
console.log(reg1.test('my name is : abc')); //true
console.log(reg2.test('my name is : abc')); //true
</script>