2014-08-29 2 views
0

Можно создать регулярное выражение для использования с СЭД, чтобы соответствовать все от (и включая):Регулярное выражение для соответствия символу '{'?

main(argc, argv) 

до (но не включая) следующий «{» характер?

Я не уверен, как сопоставить это через несколько строк.

Ожидаемый ввод:

blah 

main(argc, argv) 
a 
b 
c 
{ 

Ожидаемый матч:

main(argc, argv) 
a 
b 
c 

Спасибо!

+2

Я не видел '' {символ в вашем входе. Было бы лучше, если бы вы опубликовали ввод и ожидаемый результат. –

+0

Спасибо, сделали это! – James

+0

Обычно я использую '[^ {] *'. Не уверен в sed. –

ответ

0

Попробуйте это:

sed -n '/main(argc, argv)/,/{/ p' 

На моей системе (Mac OS X), он делает это:

$ sed -n '/main(argc, argv)/,/{/ p' t.txt 
main(argc, argv) 
a 
b 
c 
<any other input, not including {> 
+0

Я не уверен, что это делает, но он просто пуст входной файл. – James

+0

Что это значит? Теперь я добавлю полную расшифровку моей команды. –

+0

Aha! Почти работает, спасибо .. Но это соответствует {персонажу. – James

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