Понимание подстановочных знаков в ответах ENUM

239
Harshith Mulky

Я только начал работать над ENUM, и мы получили некоторые RR и ответы, которые похожи на эти

IN NAPTR 100 10 "u" "E2U+sip" "!^44(.*)$!sip:9739668530@isp.example.com;user=phone!" . 

Я хочу понять, как работают эти символы подстановки / регулярные выражения и как и почему они используются в ENUM?

like.."!^44(.*)$! 

Могу ли я получить какие-либо ссылки или RFC, которые могут объяснить, что означают эти символы?

-1

1 ответ на вопрос

1
grawity

Тип записи NAPTR определен в RFC 3403 . Это относится к RFC 3402 для общего алгоритма и синтаксиса регулярного выражения.

Последний описывает замены как «комбинацию расширенного регулярного выражения POSIX и строки замены, аналогичной выражению замены Unix в стиле sed». (Оба варианта являются очень распространенными синтаксисами, и вы можете найти десятки руководств по регулярным выражениям за минуту.)

Весь параметр имеет следующий синтаксис:

<separator> <regex> <separator> <substitution> <separator> 

например

!<regex>!<substitution>! 

Так же ^44(.*)$как и регулярное выражение в синтаксисе POSIX, и sip:9739668530...оно будет заменой. Это означает, что весь номер телефона - если он начинается с 44- заменяется на sip-URL.

Опять же, я не буду копировать множество существующей документации по регулярным выражениям здесь. (Вам не нужно специально искать POSIX - очень похожий синтаксис используется регулярными выражениями PCRE, регулярными выражениями JavaScript, регулярными выражениями Python и т. Д., Отличающимися только расширенными функциями.)

Похожие вопросы