zoukankan      html  css  js  c++  java
  • 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。(不要和[]混淆了)

  • 相关阅读:
    「LibreOJ NOI Round #2」不等关系
    Atcoder Grand Contest 036 D
    「CTS2019」氪金手游
    「CTS2019」珍珠
    「APIO2016」烟花表演
    「PKUWC2018/PKUSC2018」试题选做
    「PKUWC2018」猎人杀
    「WC 2019」数树
    CodeForces 794 G.Replace All
    「BZOJ 4228」Tibbar的后花园
  • 原文地址:https://www.cnblogs.com/lwl0812/p/11216875.html
Copyright © 2011-2022 走看看