2013-08-06 2 views
1

Как извлечь информацию о ячейке из файла RTF с использованием SED (оболочка bash). т.е. все символьные строки между любыми парами {}, из которых может быть несколько на линии RTF. Я хочу удалить весь RTF-код и просто сохранить значения таблицы.Вывод значений «ячейки» с использованием SED из файла RTF

+0

awk лучше такого рода вещи, я считаю ... лучше работать с разделителями. –

+0

Как вы хотите обрабатывать обычный текст за пределами таблиц? Если вам нужен только текст внутри таблицы, это будет значительно сложнее. –

+0

Возможно, вам стоит показать, что у вас есть в RTF-файле. Я создал простой RTF-файл, а знаки '{}' не находятся вокруг элементов в ячейках таблицы. Конечно, это был RTF, созданный на Mac, а не на Windows-машине. Кроме того, хотите, чтобы маркеры '{}' хранились или не были? –

ответ

1

Это может работать для вас (GNU СЭД):

sed '/{/!d;s/[^{]*{\([^}]*\)}/\1\n/;P;D' file 

Он удаляет любую строку, которая не имеет открывающую скобку. Затем удаляет любые символы и включает первую открывающую скобу. Затем печатает строку (строки) внутри, но не включает замыкающую фигуру на отдельной строке.

+0

RTF-файл из таблицы Word. Я ищу, чтобы фиксировать только значения внутри ячеек таблицы и помещать их в текстовый файл. В одной строке может быть несколько наборов {} в связи с несколькими столбцами в таблице Word. Было бы также полезно зафиксировать все случаи {N = xx}, где xx - число. Большое спасибо за Вашу помощь. – user2658151

Смежные вопросы