当前位置: 移动技术网 > IT编程>开发语言>JavaScript > javaScript高级程序设计:正则表达式代码实例

javaScript高级程序设计:正则表达式代码实例

2019年03月24日  | 移动技术网IT编程  | 我要评论
正则表达式通常用来匹配一个字符串,返回true(至少匹配到了一次)或者false(一次也没匹配到)。 正则表达式分为字面量方式和构造函数的方式 var reg = /[ab

正则表达式通常用来匹配一个字符串,返回true(至少匹配到了一次)或者false(一次也没匹配到)。

正则表达式分为字面量方式和构造函数的方式

var reg = /[abs]/g; //字面量
var reg5 = new regexp("[sbs]jjj", "g");//全局匹配sjjj或者bjjj;

字面量形式转换为构造函数的正则要注意的事项:

var reg5 = new regexp("[sbs]jjj", "g");//全局匹配sjjj或者bjjj;
//等同于
var reg6 = /[sbs]jjj/g;
//注意传递给构造函数的参数都是字符串,
//所以在某些时候可能要字符进行双重转译(在转译的基础上再次进行转译,所有的元字符),通常是"\",在构造函数中转译成"\\"(或者说,遇到"\",就转译成"\\")

正则表达式有三种匹配模式---i,g,m。

1.i表示在匹配的时候不区分大小写(包括要匹配的字符串和正则字面量本身);g表示全局匹配(可能会匹配多次,而不是匹配到一次就停止,并且下一次匹配总是从上一次匹配上的字符之后进行),m表示多行(不常用),三种匹配模式可以组合使用

var reg1  = /ght///匹配字符中的ght字符,只匹配一次;
var reg2  = /ght/g
alert(reg2.test("htyghtthyght"))//会进行多次匹配,第一次是从0开始,匹配到第一次后,又从下标为4开始继续匹配

元字符:( [ { \ ^ $ | ) ? * + .],如果这些元字符要作为匹配"元素",就必须要进行转译,用"\"+元字符进行转译;

/**
 *全局匹配"yk"或者"hk",不区分大小写
 * @type {regexp}
 */
var reg3 = /[yh]k/gi;
/**转译
 * 全局匹配"[yh]k",不区分大小写;
 */
var reg4 = /\[yh\]k/gi;
alert(reg4.test("[yh]kii"))//true

如您对本文有疑问或者有任何想说的,请点击进行留言回复,万千网友为您解惑!

相关文章:

验证码:
移动技术网