&&前端&& 正则表达式

写在前面的内容
以下是我学习记录
有不正确的地方 大家一起讨论学习 进步
码农双双 在路上

正则表达式
在编程语言中,正则表达式用于匹配指定的字符串。 通过正则表达式创建匹配模式(规则)可以帮你完成指定匹配。

如果想要在字符串 The dog chased the cat 中匹配到 the 这个单词,可以使用如下正则表达式:/the/。 注意,正则表达式中不需要引号。

let a =“The dog chased the cat” ;
let b = /the/;
b.test(a);

这里会打印出来是true。

JavaScript 中有多种使用正则表达式的方法。 测试正则表达式的一种方法是使用 .test() 方法。 .test() 方法会把编写的正则表达式和字符串(即括号内的内容)匹配,如果成功匹配到字符,则返回 true,反之,返回 false。

test 方法会返回 true。

加深印象再举一个🌰栗子
let myString = “Hello, World!”;
let myRegex = /Hello/;
let result = myRegex.test(myString); // 修改这一行

第二个知识点

政策表达式默认情况下是区分大小写的
let testStr = “Hello, my name is Kevin.”;
let testRegex = /Kevin/;
testRegex.test(testStr);
test 方法会返回 true。
let wrongRegex = /kevin/;
wrongRegex.test(testStr);
此 test 调用将返回 false。

第三个知识点
同时用多种模式匹配文字字符串
你可以使用 alternation 或 OR 操作符搜索多个模式: |
此操作符匹配操作符前面或后面的字符。 例如,如果你想匹配 yes 或 no,你需要的正则表达式是 /yes|no/。

let petString = “James has a pet cat.”;
let petRegex = /dog|cat|bird|fish/; // 修改这一行
let result = petRegex.test(petString);
console.log(result);

第四个知识点

在匹配时忽略大小写
可以使用标志(flag)来匹配这两种情况。 标志有很多,不过这里我们只关注忽略大小写的标志——i。 可以通过将它附加到正则表达式之后来使用它。 这里给出使用该标志的一个实例 /ignorecase/i。 这个字符串可以匹配字符串 ignorecase、igNoreCase 和 IgnoreCase。

let myString = “manongshuangshuang”;
let fccRegex = /SHUANG/i; // 修改这一行
let result = fccRegex.test(myString);
console.log(result);

正则.test(字符串)

控制台会打印什么 自己复制过去看看

第五个知识点
提取匹配项
使用.match() 方法来提取找到的实际匹配项。

例子🌰
console.log(“Hello, World!”.match(/Hello/));

控制台打印
[ ‘Hello’, index: 0, input: ‘Hello, World!’, groups: undefined ]

使用方法
字符串.match(正则表达式);

第六个知识点
全剧匹配
let testStr = “Repeat, Repeat, Repeat”;
let ourRegex = /Repeat/;
testStr.match(ourRegex);
在这里 match 将返回 [“Repeat”]。

只能匹配一次
若要多次搜寻或提取模式匹配,可以使用 g 标志。
let repeatRegex = /Repeat/g;
testStr.match(repeatRegex);
这里 match 返回值 [“Repeat”, “Repeat”, “Repeat”]

let twinkleStar = “Twinkle, twinkle, little star”;
let starRegex = /Twinkle/gi; // 修改这一行
let result = twinkleStar.match(starRegex); // 修改这一行
console.log(result)

第七个知识点 通配符
有时不(或不需要)知道匹配模式中的确切字符。 如果要精确匹配到完整的单词,那出现一个拼写错误就会匹配不到。 幸运的是,可以使用通配符 . 来处理这种情况。

通配符 . 将匹配任何一个字符。 通配符也叫 dot 或 period。 可以像使用正则表达式中任何其他字符一样使用通配符。 例如,如果想匹配 hug、huh、hut 和 hum,可以使用正则表达式 /hu./ 匹配以上四个单词。

let humStr = “I’ll hum a song”;
let hugStr = “Bear hug”;
let huRegex = /hu./;
huRegex.test(humStr);
huRegex.test(hugStr);

上面的 test 都会返回 true。

第八个知识点
已经了解了文字匹配模式(/literal/)和通配符(/./)。 这是正则表达式的两种极端情况,一种是精确匹配,而另一种则是匹配所有。 在这两种极端情况之间有一个平衡选项。
可以使用字符集 (character classes)更灵活的匹配字符。 可以把字符集放在方括号([ 和 ])之间来定义一组需要匹配的字符串。
例如,如果想要匹配 bag、big 和 bug,但是不想匹配 bog。 可以创建正则表达式 /b[aiu]g/ 来执行此操作。 [aiu] 是只匹配字符 a、i 或者 u 的字符集。

let bigStr = “big”;
let bagStr = “bag”;
let bugStr = “bug”;
let bogStr = “bog”;
let bgRegex = /b[aiu]g/;
bigStr.match(bgRegex);

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值