0

我有一个包含 1000 行的文件

例如:

chr1        Cufflinks        transcript        34611        36081        1000        -        .        gene_id "FAM138A"; transcript_id "uc001aak.3"; FPKM "1.2028600217"; frac "1.000000"; conf_lo "0.735264"; conf_hi "1.670456"; cov "0.978610";

我想搜索文件并提取字符串之后的值FPKM,比如

"1.2028600217"

我可以使用它awk吗?

4

2 回答 2

1

如果您不关心FPKM显示在哪一列,您可以:

grep -Po '(?<=FPKM )"[^"]*"' file
于 2013-04-01T19:27:15.777 回答
1

您可以使用 awk,但这是单行的简单替换,因此 sed 更适合:

$ cat file
chr1 Cufflinks transcript 34611 36081 1000 - . gene_id "FAM138A"; transcript_id "uc001aak.3"; FPKM "1.2028600217"; frac "1.000000"; conf_lo "0.735264"; conf_hi "1.670456"; cov "0.978610";
$ sed 's/.*FPKM *"\([^"]*\)".*/\1/' file
1.2028600217
于 2013-04-01T19:28:35.487 回答