#!/usr/bin/python
#
# tests regex with matches
# handy utility to learn regex in python
#(c)lostp, 2010 December
#version 0.0.1
import re
class AppModel:
pass
AppModel.regexstr = ''
AppModel.matchstr = ''
def main():
while(1):
line = raw_input("REGEX>")
l = line.split()
if (line[:7] == 'compile'):
try:
AppModel.regexstr = l[1]
AppModel.compiledobj = re.compile(AppModel.regexstr)
except:
print "%s is not a valid regex" % AppModel.regexstr
continue
else:
AppModel.matchstr = line
matches()
def matches():
if AppModel.compiledobj.match(AppModel.matchstr):
print "%s matches the pattern %s" % (AppModel.matchstr,AppModel.regexstr)
else:
print "%s does not match the pattern %s" % (AppModel.matchstr,AppModel.regexstr)
if __name__ == '__main__':
main()
Diff to Previous Revision
--- revision 1 2010-12-17 17:16:30
+++ revision 2 2010-12-17 17:28:26
@@ -21,8 +21,12 @@
line = raw_input("REGEX>")
l = line.split()
if (line[:7] == 'compile'):
- AppModel.regexstr = l[1]
- AppModel.compiledobj = re.compile(AppModel.regexstr)
+ try:
+ AppModel.regexstr = l[1]
+ AppModel.compiledobj = re.compile(AppModel.regexstr)
+ except:
+ print "%s is not a valid regex" % AppModel.regexstr
+ continue
else:
AppModel.matchstr = line
matches()