01. 正则表达式入门(学习笔记)


1.1 正则表达式的用途

场景:

  • 搜索一个文件,包含单词 car,但是不想把其他包含字符串 car 的单词也找出来。
  • 通过服务器动态生成网页,将包含 url 的变成可点击的,即用 <a> 标签包裹。
  • form 表单对电子邮件格式的验证。
  • 将代码中的 size 替换成 isize,但是不把其他包含 size 的单词替换掉。
  • 把包含 Application 的计算机文件系统中的文件显示出来。

等。

1.2 如何使用正则表达式

两种基本用途:搜索和替换。

1.2.1 用正则表达式进行搜索

  • 搜索一个文件,包含单词 car,但是不想把其他包含字符串 car 的单词也找出来。
const reg = /[Cc][Aa][Rr]/g;
const str = 'this is a car, and this is a card. The car is big, and the card is small.';
let match;
while ((match = reg.exec(str))) {
  console.log(`匹配的单词:${match[0]},index:${match.index}`);
}
// 匹配的单词:car,index:10
// 匹配的单词:car,index:39

  

参考
匹配一个词的边界。一个词的边界就是一个词不被另外一个“字”字符跟随的位置或者没有其他“字”字符在其前面的位置。注意,一个匹配的词的边界并不包含在匹配的内容中。换句话说,一个匹配的词的边界的内容的长度是0。(不要和[]混淆了)

原文地址:https://www.cnblogs.com/lwl0812/p/11216875.html