首页 > 解决方案 > 在 sed 中,我可以防止 \S 匹配括号吗?

问题描述

输入文件有这个内容

you have to identify (http://third-view.herokuapp.com/) 

我想删除 URL,所需的输出是

you have to identify ()

但下面的 Sed 命令也删除了 ')' 括号。

sed -i -e 's!http[s]\?://\S*!!g' file

标签: shellawksed

解决方案


通过将它们添加到显式字符类来添加()到要终止的字符列表:

sed -r -i -e 's!http[s]?://[^[:space:]()]*!!g' file

推荐阅读