正则表达式学习笔记

**正则表达式**我是耳闻已久,但是一直没有去学习它,今天抽出一些时间来学习它,学习记录如下。

正则表达式(Regular Expression)是一种文本模式,包括普通字符(例如,a 到 z 之间的字母)和特殊字符(称为"元字符(metacharacter)")。

正则表达式使用单个字符串来描述、匹配一系列匹配某个句法规则的字符串。

正则表达式是繁琐的,但它是强大的,学会之后的应用会让你除了提高效率外,会给你带来绝对的成就感。只要认真阅读本教程,加上应用的时候进行一定的参考,掌握正则表达式不是问题。

许多程序设计语言都支持利用正则表达式进行字符串操作。这里是引用

1.引言

毫无疑问,在没有真正系统学习正则表达式之前,我们就已经使用过某些不涉及脚本的正则表达式概念了!就比如说,我们学习专业课过程中都有接触过这样的概念:*是>=0个,+是>+1个。这两个符号就是所谓的通配符。

2.例子

举一些有趣的例子来讨论一些。

2.1.1 单词查找

场景:在一串密密麻麻的字符串文本中寻找到指定的单词串。比如:him,history,high,hi…。你要精确的寻找定位hi这个单词,就可以采用 \bhi\b 精准匹配。

2.1.2 c/c++/java的单行注释

\/\/.*(?!\s)
or:  //.*(?!\s)

2.1.3 c/c++/java的多行注释

\/\*(?:\*(?!\/)|[^\*])*\*\/

或者另一个版本:

\/\*(?:[^\*]|\*+[^\/\*])*\*+\/

它所对应的DFA,按照网络上流传的说法,是这样的:
在这里插入图片描述
描述的是否精确还是有待思考!

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值