"proctor" <[EMAIL PROTECTED]> wrote in message
news:<[EMAIL PROTECTED]>...
> hello,
>
> i hope this is the correct place...
>
> i have an issue with some regex code i wonder if you have any insight:
>
> ================
There's nothing actually *wrong* wth your regex. The problem is your
misunderstanding of raw string notation. In building up your regex, do not
start the string with "r'" and end it with a "'".
def makeRE(w):
print w + " length = " + str(len(w))
# reString = "r'" + w[:1]
reString = w[:1]
w = w[1:]
if len(w) > 0:
for c in (w):
reString += "|" + c
# reString += "'"
print "reString = " + reString
return reString
Or even better:
def makeRE(w):
print w + " length = " + str(len(w))
reString = "|".join(list(w))
return reString
Raw string notation is intended to be used when the string literal is in
your Python code itself, for example, this is a typical use for raw strings:
ipAddrRe = r'\d{1,3}(\.\d{1,3}){3}'
If I didn't have raw string notation to use, I'd have to double up all the
backslashes, as:
ipAddrRe = '\\d{1,3}(\\.\\d{1,3}){3}'
But no matter which way I create the string, it does not actually start with
"r'" and end with "'", those are just notations for literals that are part
of your Python source.
Does this give you a better idea of what is happening?
-- Paul
--
http://mail.python.org/mailman/listinfo/python-list