generalDesc = (new PhoneNumberDesc()) ->setNationalNumberPattern('[178]\d{6}') ->setPossibleLengthLocalOnly([6]) ->setPossibleLength([7]); $this->mobile = (new PhoneNumberDesc()) ->setNationalNumberPattern('(?:17[1-3]|7\d\d)\d{4}') ->setExampleNumber('7123456'); $this->premiumRate = PhoneNumberDesc::empty(); $this->fixedLine = (new PhoneNumberDesc()) ->setNationalNumberPattern('(?:1(?:1[12568]|[24]0|55|6[146])|8\d\d)\d{4}') ->setExampleNumber('8370362') ->setPossibleLengthLocalOnly([6]); $this->numberFormat = [ (new NumberFormat()) ->setPattern('(\d)(\d{3})(\d{3})') ->setFormat('$1 $2 $3') ->setLeadingDigitsPattern(['[178]']) ->setNationalPrefixFormattingRule('0$1') ->setNationalPrefixOptionalWhenFormatting(false), ]; $this->tollFree = PhoneNumberDesc::empty(); $this->sharedCost = PhoneNumberDesc::empty(); $this->personalNumber = PhoneNumberDesc::empty(); $this->voip = PhoneNumberDesc::empty(); $this->pager = PhoneNumberDesc::empty(); $this->uan = PhoneNumberDesc::empty(); $this->voicemail = PhoneNumberDesc::empty(); $this->noInternationalDialling = PhoneNumberDesc::empty(); } }