Linux 中grep命令在文本中匹配单个的字母

 

001、 grep命令匹配单个的字母

[root@pc1 test]# ls
a.txt
[root@pc1 test]# cat a.txt       ## 测试数据
>chr1 xxx
CATCTCCCTTAGTGTTGTCCTGAATTGCTNCTACCAGTCTGCTCTGTGTCTTTCAGGGGGACNNNNNNNNNNNNNNNNNNN
NNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNN
NNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNN
>chr2
NNNNNNNCAGNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNN
NNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNN
NNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNN
NNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNN
NTTTTCAAATATTGGTGAGTGAGGGGTTTAATCTCCTTAGGAGCACATTTGAAAATGAGCAAACTGTTGGTCTAATGCTA
ttcagttcagttcagtcgtcagtcgtgtccgactctttgggaccccatcaaNNNNNNNNNNNNNNNNNNNNNNNNNNNNN
[root@pc1 test]# grep -P '(?<!N)N(?!N)' a.txt       ## -P 表示扩展perl正则表达式; 表示N的左侧和右侧都不能匹配N;   大写P,必须是单引号
CATCTCCCTTAGTGTTGTCCTGAATTGCTNCTACCAGTCTGCTCTGTGTCTTTCAGGGGGACNNNNNNNNNNNNNNNNNNN
NTTTTCAAATATTGGTGAGTGAGGGGTTTAATCTCCTTAGGAGCACATTTGAAAATGAGCAAACTGTTGGTCTAATGCTA

 

image

 。