首页 新闻 会员 周边 捐助

正则元字符\b

0
[已解决问题] 解决于 2025-07-22 15:05

a.txt:
systemd-core
systemd-time

grep '\bsystemd\b' a.txt为什么能匹配到,不是空白是单词边界么,为什么上面的还能匹配到?

_java_python的主页 _java_python | 小虾三级 | 园豆:984
提问于:2025-07-22 15:00
< >
分享
最佳答案
0

\b 的定义是\b 匹配的是位置(零宽度断言),而不是字符,

\b 匹配的是以下位置(不是字符):

单词字符(\w,即 [a-zA-Z0-9_])和非单词字符(\W)之间的位置

字符串开头/结尾与单词字符之间的位置

关键区别
概念 匹配内容 示例
单词边界 \b 位置(零宽度) hello-world 中 o 和 - 之间的位置
空白字符 \s 具体字符(空格、制表符、换行符) 空格 、制表符 \t、换行符 \n

_java_python | 小虾三级 |园豆:984 | 2025-07-22 15:05
清除回答草稿
   您需要登录以后才能回答,未注册用户请先注册