首页 > 解决方案 > Linux在句子中显示2个单词之间的字符串

问题描述

所以我有点努力只从字符串中剪掉我需要的东西。例如,我有字符串“Hello world,你今天过得怎么样?”

所以我尝试使用 SED

 sed -e 's/Hello\(.*\)doing/\1/'

哪个确实删除了Hellodoing,但今天离开了?

最终的结果是世界,你今天好吗?我需要它成为世界,你好吗

寻找进一步的建议如何更好地做到这一点。

标签: linuxsed

解决方案


如果要删除 之后的所有内容,请在模式中doing添加.*

echo 'Hello world, how are you doing today?' | sed -e 's/Hello\(.*\)doing.*/\1/'
 world, how are you

还要注意输出中的前导空格。Hello如果您还想删除它,请在模式后添加一个空格。


推荐阅读