ЯКак я могу сказать это в sed?
text text text [text text] \n
text text text [text text] \n
Я хочу
text text text \n
text text text \n
Что RE можно использовать?
ЯКак я могу сказать это в sed?
text text text [text text] \n
text text text [text text] \n
Я хочу
text text text \n
text text text \n
Что RE можно использовать?
следующие работы независимо от того, является ли \n
конец строки или обратный косая черта и буква «п»:
sed 's/\[.*] //' $file
картина выглядит для открытой квадратной скобки следует любой последовательность символов до последнюю закрытую квадратную скобку и следующее пространство (если их несколько). Вы можете усовершенствовать «.*
» в «[^]]*
», чтобы соответствовать всему, что близко к квадратной скобке; это удаляет только первую квадратную скобку.
/[^\[]*/
получает от вас большую часть пути. Если после [...] ничего не появляется, то этого достаточно.
вы можете использовать AWK
$ more file
text [dont want text here ] text text [ dont want text] \n
text text text [ dont want text] \n
$ awk -vRS=']' '/\[/{gsub(/\[.*/,"")}1' ORS="" file
text text text \n
text text text \n
Ор может понадобиться, чтобы добавить место на одном конце или th'other этого регулярного выражения, если пространства интересны. –
Можете ли вы объяснить, что еще вы собираетесь делать с этим RE? Он соответствует шаблону «ничего, кроме обратной косой черты или открытой квадратной скобки», поэтому у вас есть некоторая работа, чтобы использовать его в замене, не так ли? –