iro/telnumber.py
branchdevel
changeset 129 d6704178a18f
parent 126 1ac2439a68b5
child 139 65117fd28400
equal deleted inserted replaced
128:1a3ebdd3bdaf 129:d6704178a18f
    11 #You should have received a copy of the GNU General Public License
    11 #You should have received a copy of the GNU General Public License
    12 #along with this program; if not, see <http://www.gnu.org/licenses/>.
    12 #along with this program; if not, see <http://www.gnu.org/licenses/>.
    13 
    13 
    14 import re
    14 import re
    15 
    15 
    16 from .error import NotATelNumber
    16 from .error import InvalidTel
    17 
    17 
    18 class Telnumber:
    18 class Telnumber:
    19     re_telnum=re.compile(r'^\s*(\+)?([0-9\s\-/\(\)]){5,}\s*$')
    19     re_telnum=re.compile(r'^\s*(\+)?([0-9\s\-/\(\)]){5,}\s*$')
    20     re_land=re.compile(r'^\s*(\+|00)(?P<land>[1-9]{2})')
    20     re_land=re.compile(r'^\s*(\+|00)(?P<land>[1-9]{2})')
    21     re_number=re.compile(r'[^0-9]')
    21     re_number=re.compile(r'[^0-9]')
    26             self.createNumber(number)
    26             self.createNumber(number)
    27 
    27 
    28     def createNumber(self, number):
    28     def createNumber(self, number):
    29         
    29         
    30         if not self.re_telnum.match(number):
    30         if not self.re_telnum.match(number):
    31             raise NotATelNumber(number)
    31             raise InvalidTel(number)
    32         
    32         
    33         
    33         
    34         self.land=self.std_land
    34         self.land=self.std_land
    35         land=self.re_land.match(number)
    35         land=self.re_land.match(number)
    36         
    36