Jump to content
Калькуляторы

Обработка тел.номера в TCL-скрипте

Коллеги, приветствую!

 

Пытаюсь написать tcl скрипт для обработки звонков на Cisco и столкнулся с дурацкой проблемой.

Дано: ANI вида "74957777777", надо получить из него "7777777", т.е. оставить последние n-знаков, а остальное отрезать.

Ситуация осложняется тем что ANI может быть вида "4957777777" или "+74957777777", т.е. предугадать кол-во символов сложно.

 

Есть идеи как чистить ANI элегантнее?

Share this post


Link to post
Share on other sites

Из tcl вызвать внешнюю команду и обработать sed'ом

  echo "+749577777" | sed s'/^+7//'g

Share this post


Link to post
Share on other sites

Увы, в качестве платформы - IOS, не думаю что это возможно.

Share this post


Link to post
Share on other sites

lumenok Неверно, оно у вас только +7 отрежет, ТС нужно чтото вроде

echo "+74957777777" | sed 's/^.*\(.......\)$/\1/'

где n - число точек.

Share this post


Link to post
Share on other sites

KaraVan В TCL будет чтото типа

set num "+74957777777"
regexp {^.*\(.\{7\}\)$} $num matched sub1
puts $sub1

Edited by Morze

Share this post


Link to post
Share on other sites

Morze, спасибо за наводку, попробую!

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
Sign in to follow this