Javascript----基础篇

正则表达式的概念及作用

概念:字符串正确的规则 如身份证格式,邮箱格式,电话号码格式 电话号码格式->由1开始,后面还有10位数字

正则表达式(Regular Ession)是一个描述字符规则的对象。如:只能出现字母,只能出现数字,前三个必须是数字等

作用:前后端交互的过程中,往往有大量数据效验功能, 通过正则对象的本地字符串格式验证,可以大大提高前后端交互的效率, 降低服务器压力。

1.构造方法

var reg = new RegExp("格式字符串",["修饰符"]);

var reg = new RegExp("a");//目标字符串至少包含一个a

reg = new RegExp("aaa"); //目标字符串至少包含3个连续的a

2.字面量

var reg = /格式字符串/修饰符;

reg = /a/;//目标字符串至少包含一个a

reg = /aaa/;//目标字符串至少包含3个连续的a

通常创建正则用字面量的方式,但以下情况必须用构造方法(用到下标时)

var arr = ["heihei","haha","xixi"];

var reg = /arr[0]/; 错误的

var reg = new RegExp(arr[0]);

2.正则值的分类

1.格式字符串:

2.普通字符+特殊字符

3.普通字符:普通的字符,看起来是啥就是啥

4.特殊字符:a.单个字符 b.组合字符 c.各种括号

正则中的特殊字符:

单个字符:

^:正则开始

$ : 正则结束

. : 元字符, 表示任意一个字符

\. : 表示转义字符 \.表示.

+: 表示其前面紧挨着的字符至少出现1次 等价{1,}

*:表示其前面出现的字符至少出现过0次 等价{0,}

?: 表示其前面出现的字符至少出现过0次,至多1次 等价{0,1}

| : 表示或者

组合字符: \d : 0-9之间的任意一个数字 \d只占一个位置

\D : 除了\d

\w : 数字,字母 ,下划线 0-9 a-z A-Z _

\W : 除了\w

\s : 空格或者空白等

\S : 除了\s

括号:

{m,n}表示括号前面紧挨着的字符至少出现m个,至多出现n个

: 以b开头 至少3个a 至多5个a /^ba{3,5}&/

{m}表示括号前面紧挨着的字符只能出现m个

{m,}表示括号前面紧挨着的字符至少出现m个

[] 表示括号内的任意一个字符 [wd3h]

[a-z]表示任意一个小写字母

[^ ]表示非括号内的任意一个字符

()一般与或连用 表示优先级

[\u4e00-\u9fa5] 任意一个中文字符

正则中的相关方法及属性

1.test

功能:判断目标字符串是否满足正则对象的格式,返回布尔值

参数:test(目标字符串)

返回值:布尔值

2.exec

功能:返回满足郑泽对象的子串,存放至长度为1的数组中

参数:exec(目标字符串)

返回值:符合正则的子串,存储在长度为1的1数组中

修饰符

  1. g:全局
  2. i:忽略大小写

正则对象作为字符串函数的参数

1.search 功能:查找字符串 参数:search(正则对象) 返回值:下标

2.repace功能:替换字符串参数:repace(/字符串要替换片段/g ,“替换的字符串”)返回值:替换的新字符串。

3..match 功能:返回满足正则对象的子串,存放至数组中 参数:match(目标字符串); 返回值:复合正则的子串,存放至数组中。

字符串的扩展

在ES5中使用的是indexOf()方法,在ES6中可以使用includes(),satrsWith(),endsWith()三个方法 str.includes(参数):返回布尔值,表示是否找到了参数字符串。 str.startWith(参数):返回布尔值,参数是否在源头字符串的头部。 str.endWith(参数):返回布尔值,参数是否在源头字符串的尾部。

读字符 console.log("\u{21c56}");  读编码 console.log(str.codePointAt(0));

猜你喜欢

转载自blog.csdn.net/apple_52282345/article/details/126660499