Javascript-форум (https://javascript.ru/forum/)
-   Серверные языки и технологии (https://javascript.ru/forum/server/)
-   -   Регулярное выражение для sed (https://javascript.ru/forum/server/65531-regulyarnoe-vyrazhenie-dlya-sed.html)

Bravo 24.10.2016 08:33

Регулярное выражение для sed
 
Приветствую.

Есть определенный вывод с консоли и он содержит, примерно такие данные:

Строка: AAAA BBB CC DDDD BB CC [SDAC]

Мне надо через sed и регулярку найти слова, где только два и три символа и заменить на символ "0".

У меня не получается ограничить диапазон выборки, захватывается четыре символа.

"s/[A-Z+]\{2,3\}/abbreviation/g"
или
"s/[A-Z+]\{2,\}/abbreviation/g" – самый близкий вариант.

Спасибо за ответы. :thanks:

ksa 24.10.2016 09:59

Bravo, как вариант...

var str='AAAA BBB CC DDDD BB CC [SDAC]';
alert(str+'\n'+str.replace(/(^|\s)\D{2,3}(?=\s|$)/g,'$1'+0));

Bravo 24.10.2016 10:38

ksa, спасибо за ответ, но не пойму до конца как адаптировать под мою задачу (unix консоль)?

ksa 24.10.2016 10:39

Цитата:

Сообщение от Bravo
unix консоль

Тут я тебе не помощник... :(

Bravo 24.10.2016 13:46

Разобрался: sed "s/\s[A-Z]\{2,\}\s/ 0 /g" :victory:


Часовой пояс GMT +3, время: 17:50.