Created: 2023-12-21
Status: #H5/js

Recall:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
/pattern/attributes
正常会找第一个匹配的内容
其中attribute包含 g,i,m 分别指 全局匹配、区分大小写、多行匹配
[ab] = /a|b/
[a-z]=任意小写字母
[A-Z]=任意大写字母
[A-z]=任意字母
[0-9]=任意数字

//检查一个字符串中是否有abc或adc或aec
reg = /a[bde]c/
//[^]除了ab
reg = /[^ab]/;

//test函数,测试字符串是否跟reg匹配
var reg = /\./
console.log(reg.text("b."));
//split 根据任意字母来拆分字符串,默认全局
var result = str.split(/[A-z]/);
//search 搜索匹配内容,只找出第一个
var result = str.search(/a[bef]c/);
//match 提取多个正则匹配(全局+忽略大小写),封装到数组
var result = str.matc(/[a-z]/gi);
//replace 正则匹配进行替换
var result = str.replace(/a/, "@-@");
//replace 删除字母
var result = str.replace(/[a-z]/gi, "");

//{n}对前面的内容设置匹配出现次数
var reg = /(ab){3}/; // (ab)出现3次
var reg = /ab{3}c/; // a和c中间有3个b
//{n1,n2} 匹配n1到n2次
// n+ 前面至少出现一个,相当于{1,}
var reg = /ab+c/;
// n* 前面0或多个,相当于{0,}
var reg = /ab*c/;
// n? 前面0或1个,相当于{0,1}
var reg = /ab?c/

// ^ 表示检查是否以紧跟字符串做为开头
// $ 表示结尾
var reg = /^a/; // 以a开头
var reg = /a$/; // 以a结尾
var reg = /^a$/; //全匹配a

// . 表示任意字符,要用以上特殊字符要用转移字符 \.


//\w 任意字母、数字、_下划线 [A-z0-9_]
//\W 除了字母、数字、_下划线 [^A-z0-9_]
//\d 任意数字
//\D 除了数字
//\s 空格
//\S 除了空格
//\b 独立单词边界
reg = /child/
reg.test("children") //true
reg = /\bchild\b/:
reg.text("a children") //false
//\B 除了单词边界

//替换掉所有空格
var str = " hello ";
str = str.replace(/\s/g, "");
//开头的所有空格
reg = /^\s*/
//结尾的所有空格
reg = /\s*$/
//前后所有空格
reg = /^\s*|\s*$/g

/*
电子邮件 aa.aa @ abc.com.cn
任意字母下划线 . 任意字母下划线 @ 任意字母数字 .任意字母(2-5) .任意字母(2-5)
*/
reg = /^ \w{3,} (\.\w+)* @ [A-z0-9]+ (\.[A-z]{2,5}){1,2} $/

Summary:

  1. var reg=xx; reg.text(“string”);
See also

1.

References

1.