我正在尝试删除一个字符串,包括一个字符“_”到另一个字符“:”,但不包括该字符。所有内容都在同一行上。
我有具有不同名称和编号的文件,例如包含:
some_name_123:456(other_name_123:456,some_word_567:765, and so on...
我试图删除 _123,_567,这是每个单词后不同的模式,所以我最终得到:
some_name:456(other_name:456,some_word:765,
但是,我似乎只能删除从第一个 _ 到 : 的所有内容,这会产生 some_:456,这不是我想要的。以下是我目前得到的结果。有人能帮忙吗?
sed -e 's/\(+\).*\(@\)/\1\2/'
这在第一次发生时给出了我想要的结果,但没有给出其余发生的结果:
sed 's/_[^_]\+:/:/'