通配符、正则表达式与文本检索的介绍

通配符、正则表达式与文本检索的介绍

在这里插入图片描述

为了方便检索文本,文本编辑器通常会带有「检索功能」。
比如「记事本」和「Word」都可以搜索,Word 还可以在高级模式中用「通配符」来匹配文本。
广告拦截网站也是使用了基于「通配符」的过滤器。
而「正则表达式」相当于通配符的增强版,在编程中广泛使用。

正则表达式

正则表达式是应用最广泛的一种文本筛查工具。
下面介绍一些常用语法,方便入门与查阅

限定符

  • ? :字符可有可无
  • * :字符可有多个或无
  • + :字符可有多个,但不能无
  • {} :字符自定义多少个,比如 {2,4} 是 2-4 个

其他字符

  • () :括号作为整体处理
  • | :「或」运算
  • [] :限制字符内容,比如 [0-9A-Za-z]^ 取反
    • \d0-9\D 是非数字字符
    • \wa-zA-Z_\W 是非单词字符
    • \s:制表符、换行符,\S 是非空白字符
  • . :代表任意字符
  • ^$ :行首行尾,比如 ^dd$ 指只匹配行首行尾的 d
  • \b :代表文字边界

匹配模式

  • 贪婪匹配:默认模式,匹配字符长度最大情况
  • 懒惰匹配:匹配字符串长度最小的情况

切换方式是加 ? ,比如 .+ 改成 .+?

附录


资料
10分钟快速掌握正则表达式_哔哩哔哩_bilibili
Searching - voidtools :通配符、正则表达式学习
(6 封私信) BNF范式(巴科斯范式)到底是什么? - 知乎 (zhihu.com)

工具
RegExr: Learn, Build, & Test RegEx
regex101: build, test, and debug regex

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值