gpt4 book ai didi

regex - sed 查找并替换 fastq 正则表达式

转载 作者:行者123 更新时间:2023-11-29 09:50:44 24 4
gpt4 key购买 nike

我有一个文件,例如

head testSed.fastq
@M01551:51:000000000-BCB7H:1:1101:15800:1330 1:N:0:NGTCACTN+TATCCTCTCTTGAAGA
NGTCACTN
+
#>AAAAF#
@M01551:51:000000000-BCB7H:1:1101:15605:1331 1:N:0:NATCAGCN+TAGATCGCCAAGTTAA
NATCAGCN
+
#>>AA?C#
@M01551:51:000000000-BCB7H:1:1101:15557:1332 1:N:0:NCAGCAGN+TATCTTCTATAAATAT
NCAGCAGN

我正在尝试使用正则表达式将最后一个冒号后的字符串替换为 0(在此示例中,第 1、5、9 行 - 但全局)。

我已经使用 egrep egrep '[ATGCN]{8}\+[ATGCN]{16}$' testSed.fastq 检查了我的正则表达式,它返回了我期望的所有行。

但是,当我尝试使用 sed -i 's/[ATGCN]{8}\+[ATGCN]{16}$/0/g' testSed.fastq 时,原始文件未更改并且没有发生替换。

我该如何解决这个问题?我的正则表达式不够具体吗?

最佳答案

你需要正则表达式吗?

awk -F: -v OFS=: '/^@/ {$NF = "0"} 1' testfile

那不会就地保存。如果你有 GNU awk,你可以

gawk -F: -v OFS=: -i inplace '...' file

引用:https://www.gnu.org/software/gawk/manual/html_node/Extension-Sample-Inplace.html

关于regex - sed 查找并替换 fastq 正则表达式,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46915728/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com