正则表达式

本文详细介绍了正则表达式的各种元字符和语法,包括匹配任何非换行符的`.`,行起始和结束的`^`和`$`,以及分组、选择和量词等概念。通过实例展示了如何使用正则表达式进行字符串的查找、替换和验证,如匹配不含特定词汇的字符串。此外,还探讨了非贪婪匹配的概念。对于编程和文本处理人员,掌握正则表达式是必备技能。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

    \s 空格
    \S 非空格
    \w 任意字母数字或下划线
    \W 任意非字母数字或下划线
    \d 任意数字
    \D 任意非数字
    \b 单词边界
    \B 非单词边界
    
	. 匹配除了换行符以外的任何字符
    ^ 会匹配行或者字符串的起始位置,有时还会匹配整个文档的起始位置
    $ 会匹配行或字符串的结尾

    (...) 括号用于分组
    (a|b) a或b
    
	[abc] a或b或c
	[a-z] a-z的任意字符
    [a-zA-Z] a-z或A-Z
    [^abc] 任意不是abc的字符
	
    a? 零个或一个a
    a* 零个或多个a
    a+ 一个或多个a
    a*? 零个或多个a(非贪婪)
	a{n} 正好出现n次a
    a{n,} 至少出现n次a
    a{n,m} 出现n-m次a

	(?=a) 前面有a
    (?!a) 前面没有a
    (a)...\1 引用分组

    正则表达式中有(?=a)(?!a)来表示我们是否需要匹配某个东西。

    所以,有需要不匹配某样内容时,就可以用(?!a)了。比如要匹配不含hello的字符串就可以这样写。

# if后面多余分号_正则表达式: ^(\s+)if[^{]+{.*?\1}\s*;
参考:https://www.cnblogs.com/zery/p/3438845.html
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值