我有一份基因转录本列表,例如:
4R79.1b 4R79.2b AC3.1a AC3.2 AC3.3 AC3.5a
仅当最后一个字符是字母时,我才需要通过删除它来获取基因名称。我已经搜索了好几天了,但没有找到可以远程帮助的解决方案,我一定错过了一些东西。
我认为一定有一个简单的解决方案,但我最好的尝试是 sed 's/[[:alpha:]]$//'transcripts.txt >genes.txt 但它似乎没有做任何事情和文件的大小与原版没有任何改变。
请帮忙??
非常感谢。
使用 awk:
$ echo '4R79.1b 4R79.2b AC3.1a AC3.2 AC3.3 AC3.5a' |
awk '{for(i=1;i<=NF;i++) sub(/[[:alpha:]]$/,"",$i)} 1'
打印:
4R79.1 4R79.2 AC3.1 AC3.2 AC3.3 AC3.5