libphonenumber\PhoneNumberUtil::createExtnPattern PHP Method

createExtnPattern() protected static method

Helper initialiser method to create the regular-expression pattern to match extensions, allowing the one-char extension symbols provided by {@code singleExtnSymbols}.
protected static createExtnPattern ( string $singleExtnSymbols ) : string
$singleExtnSymbols string
return string
    protected static function createExtnPattern($singleExtnSymbols)
    {
        // There are three regular expressions here. The first covers RFC 3966 format, where the
        // extension is added using ";ext=". The second more generic one starts with optional white
        // space and ends with an optional full stop (.), followed by zero or more spaces/tabs and then
        // the numbers themselves. The other one covers the special case of American numbers where the
        // extension is written with a hash at the end, such as "- 503#".
        // Note that the only capturing groups should be around the digits that you want to capture as
        // part of the extension, or else parsing will fail!
        // Canonical-equivalence doesn't seem to be an option with Android java, so we allow two options
        // for representing the accented o - the character itself, and one in the unicode decomposed
        // form with the combining acute accent.
        return static::RFC3966_EXTN_PREFIX . static::$CAPTURING_EXTN_DIGITS . "|" . "[  \\t,]*" . "(?:e?xt(?:ensi(?:ó?|ó))?n?|(?:e)?xt(?:n)?|" . "[" . $singleExtnSymbols . "]|int|int|anexo)" . "[:\\..]?[  \\t,-]*" . static::$CAPTURING_EXTN_DIGITS . "#?|" . "[- ]+(" . static::DIGITS . "{1,5})#";
    }
PhoneNumberUtil