针对重叠的模式匹配进行擦除

这就是我正在运行

grep -o ',[tcb],' <<< "r,t,c,q,cb,b,"

输出是

,

但我想得到

,

(我不希望没有前面的b,或没有后面的c匹配)

检查Shell中没有Bashisms的子string

linux +查找机制与不规则expression式(查找命令)或Perl

htaccess比较cookie值,如果评估返回true / false,则redirect

删除报价周围的数字

如何使用sed命令从文件中删除包含特定string的行

因为应该在'r',t,“c,qb,b,'r,t”,c,“qb,b”和“r,t,c,qb”中find[tcb] “”

但似乎是,当包含在第一个模式匹配中,然后grep不会在模式匹配的第二个实例中查找

有没有办法解决这个问题,或者是grep不是为了做到这一点

batch file集/ pexpression式

Linux sed – 删除单词不是以特定的字符开始的

打印RegEx在bash中使用SED进行匹配

为什么这个正则expression式不适用于grep?

如何查找名称中带有方括号的文件

你可以使用awk而不是grep来为记录分隔符作为逗号:

awk -v RS=,'/^[tcb]$/{print RS $0 RS}' <<< "r,",

awk解决方案很好。 我有另一个与sed + grep:

echo "r," | sed "s/,/,/g" | grep -o ',',

你可以使用grep和Perl RE,它允许非捕获后视和前视模式来提取逗号包围的字母。 然后,您可以按照以下方式恢复分隔符:

grep -o -P '(?<=,)[tcb](?=,)' <<< "r,"|while read c; do echo ",$c,"; done

相关文章

引言 本文从Linux小白的视角, 在CentOS 7.x服务器上搭建一个...
引言: 多线程编程/异步编程非常复杂,有很多概念和工具需要...
一. 宏观概念 ASP.NET Core Middleware是在应用程序处理管道...
背景 在.Net和C#中运行异步代码相当简单,因为我们有时候需要...
HTTP基本认证 在HTTP中,HTTP基本认证(Basic Authenticatio...
1.Linq 执行多列排序 OrderBy的意义是按照指定顺序排序,连续...