微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

regex – Sed – 删除字符串前的x个字符

我有一个txt文件,我想在特定字符串之前删除x个字符

示例:

52.451878252 foo 845.851878212 foo
98.444854655 foo 458.344854656 foo

我想在字符串’foo’之前删除8个字符,以便得到这个:

52.45 foo 845.66 foo
98.44 foo 458.66 foo

我该如何处理sed命令(或其他)?

谢谢 :)

解决方法:

干得好:

sed -e 's/........foo/ foo/g' file.txt

或等效地:

sed -e 's/.\{8\}foo/ foo/g' file.txt

甚至:

sed -e 's/.\{8\}\(foo\)/ \1/g' file.txt

或者采用不同的方法,为您的样本输出相同的输出

sed -e 's/[0-9]\{7\} / /g' file.txt

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 [email protected] 举报,一经查实,本站将立刻删除。

相关推荐