我有一个奇怪的情况,我想删除除了非常长的无限字符串内的子串的第一个匹配.我在这里找到了一些类似的主题,但没有一个像我一样.
为了简单起见,这里有一些字符串之前和之后的sudo.我有一个不受限制的文件,其中"c"可能是数千个随机字符,但"bbb"是一个唯一的字符串:
aaabbbbbbccccccbbbccccccbbbccccccaaa
Run Code Online (Sandbox Code Playgroud)
我想删除除第一个bbb以外的所有内容:
aaabbbccccccccccccccccccaaa
Run Code Online (Sandbox Code Playgroud)
此外,我希望能够将其用作我可以通过的perl脚本:
cat file.in | something | perl -pe 's/bbb//g' | somethingelse > file.out
Run Code Online (Sandbox Code Playgroud)
但是,与上面的例子不同,我希望第一次出现"bbb"完整."
这似乎应该相当容易,但它让我很难过.
有任何想法吗?
提前致谢!
也许以下内容会有所帮助:
use strict;
use warnings;
my $string = 'aaabbbbbbccccccbbbccccccbbbccccccaaa';
$string =~ s/(?<=bbb).*?\Kbbb//g;
print $string;
Run Code Online (Sandbox Code Playgroud)
输出:
aaabbbccccccccccccccccccaaa
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
326 次 |
| 最近记录: |