正则表达式
什么是正则表达式?
-
介绍:正则表达式是构成*搜索模式(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>