首页 > 解决方案 > Bash 删除带有双亲的字符串,包括他的内容

问题描述

我想删除一个带有双亲和他的内容的字符串,像这样

(20.0 天)

sed -e 's/[0-9a-z]//g'

我可以删除数字和字符,但我不知道如何去掉括号

标签: regexbashsed

解决方案


sed 's/([^)]*)//g' file

将替换()包括括号之间的所有内容。

它匹配(,后跟任何字符,直到结束),然后最后匹配结束)

您拥有的当前模式将删除的不仅仅是括号内的内容。例如,

echo "(20.0 days) some text" | sed -e 's/[0-9a-z]//g'

也将删除some text


推荐阅读