美文网首页
(二)7.正则扩展19-08-07

(二)7.正则扩展19-08-07

作者: 你坤儿姐 | 来源:发表于2019-08-07 15:26 被阅读0次
{
  let regex=new RegExp('xyz','i');
  let regex2=new RegExp(/xyz/i);
 console.log(regex.test('xyz123'),regex2.test('xyz123'));
  let regex3 = new RegExp(/xyz/ig,'i');//这种写法后面的修饰符会覆盖掉前面的修饰符,所以下面打印出俩是i
  console.log(regex3.flags);//flags es6新增的获取修饰符的属性
}

打印结果:true true i

y修饰符

{
  let s='bbb_bb_b';
  let a1=/b+/g; //es5建一个正则对象
  let a2=/b+/y;
  console.log('one',a1.exec(s),a2.exec(s));
  console.log('two',a1.exec(s),a2.exec(s));
//y修饰符和g修饰符都是全局匹配,不同点在于g在任何一个位置匹配上都算,y修饰符是必须是第一个
//如何判断当前的正则对象是不是开启了y修饰符的这种模式?
console.log(a1.sticky,a2.sticky);//es6中增加了sticky属性,该属性打印为true时开启了。
}

打印结果:
one
["bbb", index: 0, input: "bbb_bb_b", groups: undefined]
["bbb", index: 0, input: "bbb_bb_b", groups: undefined]

two
["bb", index: 4, input: "bbb_bb_b", groups: undefined]
null

false true

u修饰符

console.log('u-1',/^\uD83D/.test('\uD83D\uDC2A'));
//不使用u修饰符的时候,\uD83D\uDC2A会被当成两个字符,前面D83D是两个字节所以匹配成功
console.log('u-2',/^\uD83D/u.test('\uD83D\uDC2A'));
//使用u修饰符的时候,\uD83D\uDC2A会被当成一个字符

console.log(/\u{61}/.test('a'));
//大括号包起来的内容是一个UNICODE字符的,如果不使用u修饰符的话是不会被识别的
console.log(/\u{61}/u.test('a'));

console.log(`\u{20BB7}`);
let s='𠮷';
console.log('u',/^.$/.test(s));//.并不能匹配所有字符,只能匹配小于两个字节长度的字符
console.log('u-2',/^.$/u.test(s));
//如果你的字传中 有的字符是大于两个字节的 一定要加上u修饰符才能正确的识别

console.log('test',/𠮷{2}/.test('𠮷𠮷'));
console.log('test-2',/𠮷{2}/u.test('𠮷𠮷'));
//如果处理的字符串中,正则表达式中有大于两个字节长度的字符,一定要加u修饰符

打印结果:
u-1 true
u-2 false

false
true

𠮷
u false
u-2 true

test false
test-2 true

相关文章

  • (二)7.正则扩展19-08-07

    打印结果:true true i y修饰符 打印结果:one["bbb", index: 0, input: "...

  • 2019-01-11三剑客之grep

    一、正则表达式 基本正则表达式 逐一阐述 扩展正则表达式 案例 二、grep 参数 案例

  • linux-正则表达式

    一、正则表达式 1.1、字符匹配 1.2、匹配次数 1.3、位置锚定 二、扩展正则表达式

  • Linux grep、egrep使用命令详解

    grep egrep区别grep 默认不支持扩展 但可以通过-E 选择来支持扩展正则egrep 支持扩展正则 ...

  • es6入门

    一、解构赋值 数组的解构赋值 二、 对象解构赋值 三、正则新特性 四、字符串扩展 五、数值扩展 六、数组扩展 七、...

  • ES6扩展

    字符串的扩展正则的扩展数值的扩展数组的扩展函数的扩展对象的扩展

  • 三剑客_grep

    grep grep 相关参数 grep + 正则表达式(扩展正则)

  • (二)8.字符串扩展19-08-07

    安装babel-polyfill实现兼容库 --save-devLYKdeMacBook-Pro:coding-9...

  • linux正则表达式详解(二) -扩展正则表达式

    上一章我们主要探讨了通配符和基础正则表达式,这章重点探讨扩展正则表达式的应用。 基本正则表达式包含: 扩展正则添加...

  • JavaScript ES6 - 正则表达式扩展

    正则扩展: 主要来与 ES5 做一个对比 (也就是语法的扩展) 1. ES6 正则新特性: 如图所示: 1. 正则...

网友评论

      本文标题:(二)7.正则扩展19-08-07

      本文链接:https://www.haomeiwen.com/subject/zzxodctx.html