KaraVan Опубликовано 27 марта, 2014 · Жалоба Коллеги, приветствую! Пытаюсь написать tcl скрипт для обработки звонков на Cisco и столкнулся с дурацкой проблемой. Дано: ANI вида "74957777777", надо получить из него "7777777", т.е. оставить последние n-знаков, а остальное отрезать. Ситуация осложняется тем что ANI может быть вида "4957777777" или "+74957777777", т.е. предугадать кол-во символов сложно. Есть идеи как чистить ANI элегантнее? Вставить ник Цитата Ответить с цитированием Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах More sharing options...
lumenok Опубликовано 29 марта, 2014 · Жалоба Из tcl вызвать внешнюю команду и обработать sed'ом echo "+749577777" | sed s'/^+7//'g Вставить ник Цитата Ответить с цитированием Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах More sharing options...
KaraVan Опубликовано 30 марта, 2014 · Жалоба Увы, в качестве платформы - IOS, не думаю что это возможно. Вставить ник Цитата Ответить с цитированием Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах More sharing options...
Morze Опубликовано 31 марта, 2014 · Жалоба lumenok Неверно, оно у вас только +7 отрежет, ТС нужно чтото вроде echo "+74957777777" | sed 's/^.*\(.......\)$/\1/' где n - число точек. Вставить ник Цитата Ответить с цитированием Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах More sharing options...
Morze Опубликовано 31 марта, 2014 (изменено) · Жалоба KaraVan В TCL будет чтото типа set num "+74957777777" regexp {^.*\(.\{7\}\)$} $num matched sub1 puts $sub1 Изменено 31 марта, 2014 пользователем Morze Вставить ник Цитата Ответить с цитированием Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах More sharing options...
KaraVan Опубликовано 1 апреля, 2014 · Жалоба Morze, спасибо за наводку, попробую! Вставить ник Цитата Ответить с цитированием Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах More sharing options...