盒子
盒子
文章目录
  1. 创建正则表达式的对象
  2. 正则语法
  3. 字符串和正则相关的方法

正则表达式

创建正则表达式的对象

语法:
var 变量 = newRegExp(“正则表达式”,”匹配模式”);

正则表达式的方法:
test()
- 使用这个方法可以用来检查一个字符串是否符合正则表达式的规则
如果符合则返回true,否则返回false

//这个正则表达式来检查一个字符串是否含有a,严格区分大小写
var reg = new RegExp("a");
var str = "a";
var str1 = "abcd";
var str2 = "bcd";
var result = reg.test(str);
var result1 = reg.test(str1);
var result2 = reg.test(str2);
console.log(result);//true
console.log(result1);//true
console.log(result2);//false

在构造函数中可以传递一个匹配模式作为第二个参数:
可以是
i 忽略大小写
g 全局匹配模式

正则语法

  1. 使用字面量来创建正则表达式
    语法:var 变量 = /正则表达式/匹配模式

var reg = new RegExp(“a”,”i”);
reg = /a/i
以上两个是一样的,创建方式不一样而已
使用字面量的方式创建更加简单
使用构造函数创建更加灵活(因为这种方式可以传一个变量)

  1. 创建一个正则表达式,检查一个字符串中是否有a或b
    var reg = /a|b/;——–使用|表示或者的意思
    console.log(reg.test(“adc”));//true

  2. 创建一个正则表达式检查一个字符串是否有字母
    reg=/a|b|c|d|e|f|g/;
    太烦了,用[],[]里的内容也是或的关系
    [ab]==a|b
    [a-z] 任意小写字母
    [A-Z] 任意大写字母

reg=/[A-Z]/i—–忽略大小写
不想加i—–reg=/[A-z]/

检查一个字符串中是否含有abc或adc或aec
reg=/abc|adc|aec/
有点笨这样写,所以——reg = /a[bde]c/;

[^]除了
reg=[^ab];——除了ab以外还有其他的
console.log(reg.test(“ab”));//false
console.log(reg.test(“abc”));//true
reg=[^0-9]
console.log(reg.test(“12254155”));//false
console.log(reg.test(“5464f516”));//true

字符串和正则相关的方法

  1. split()
    • 可以将一个字符串拆分为一个数组
      var str = “1a2b3c4d5e6f”;
      var result= str.split(“3”);
      console.log(result);//“1a2b”,”c4d5e6f”
      这样写死了,只能根据某个字符串拆分,而我们想根据任意字母拆分
    • 方法中可以传递一个正则表达式作为参数,这样方法将会根据正则表达式去拆分字符串
      var result = str.split(/[A-z]/);
      console.log(result);//“1”,”2”,”3”,”4”,”5”,”6”
  2. search()
    • 可以搜索字符串中是否含有指定内容
      str = “hello abc hello abc”;
      result = str.search(“abc”);
      result1 = str.search(“abcd”);
      console.log(result);//6(索引)
      console.log(result1);//-1(没有就是-1)
    • 他可以接收一个正则表达式作为参数,然后会根据正则表达式去检索字符串
      str = “hello abc hello aec afc”;
      搜索字符串中是否含有abc或aec或afc
      result = str.search(/a[bef]c/);
      console.log(result);//6
联系我
扫一扫,添加JzhBetter
  • 微信扫一扫
  • qq扫一扫