generalDesc = (new PhoneNumberDesc()) ->setNationalNumberPattern('[1-9]\d{2,5}') ->setPossibleLength([3, 4, 5, 6]); $this->premiumRate = (new PhoneNumberDesc()) ->setNationalNumberPattern('1(?:14|8[0-2589])\d|543|83111') ->setExampleNumber('543') ->setPossibleLength([3, 4, 5]); $this->tollFree = (new PhoneNumberDesc()) ->setNationalNumberPattern('1(?:1(?:[278]|6\d{3})|4[47])|5200') ->setExampleNumber('112') ->setPossibleLength([3, 4, 6]); $this->emergency = (new PhoneNumberDesc()) ->setNationalNumberPattern('1(?:1[278]|44)') ->setExampleNumber('112') ->setPossibleLength([3]); $this->short_code = (new PhoneNumberDesc()) ->setNationalNumberPattern('1(?:0[78]\d\d|1(?:[278]|45|6(?:000|111))|4(?:[03-57]|1[0145])|6(?:00|[1-46])|8(?:02|1[189]|[25]0|7|8[08]|99))|[2-9]\d{2,4}') ->setExampleNumber('112'); $this->standard_rate = (new PhoneNumberDesc()) ->setNationalNumberPattern('1(?:4[035]|6[1-46])|1(?:41|60)\d') ->setExampleNumber('140') ->setPossibleLength([3, 4]); $this->carrierSpecific = (new PhoneNumberDesc()) ->setNationalNumberPattern('5(?:200|35)') ->setExampleNumber('535') ->setPossibleLength([3, 4]); $this->smsServices = (new PhoneNumberDesc()) ->setNationalNumberPattern('[2-9]\d{2,4}') ->setExampleNumber('200') ->setPossibleLength([3, 4, 5]); } }