nev*_*int 4 unix linux bash perl sed
我有一个看起来像这样的数据:
AB208804_1 446 576 AB208804_1orf 0
AB208804_20 446 576 AB208804_20orf 0
Run Code Online (Sandbox Code Playgroud)
我想把它们转换成这个:
AB208804 446 576 AB208804orf 0
AB208804 446 576 AB208804orf 0
Run Code Online (Sandbox Code Playgroud)
只需删除第1列和第4列中的_\digit部分即可.
为什么这条线不起作用:
sed 's/_\d+//g'
Run Code Online (Sandbox Code Playgroud)
什么是正确的方法(单线)?
你需要-r开关和sed的字符类.
$ echo "AB208804_1 446 576 AB208804_1orf 0" | sed -r 's/_[0-9]+//g'
AB208804 446 576 AB208804orf 0
Run Code Online (Sandbox Code Playgroud)
或者,既然你问过; in perl:
$ echo "AB208804_1 446 576 AB208804_1orf 0" | perl -ne 's/_\d+//g; print $_'
AB208804 446 576 AB208804orf 0
Run Code Online (Sandbox Code Playgroud)
归档时间: |
|
查看次数: |
2695 次 |
最近记录: |