goldtech wrote:
Hi,
Trying to start out with simple things but apparently there's some
basics I need help with. This works OK:
import re
p = re.compile('(ab*)(sss)')
m = p.match( 'absss' )
m.group(0)
'absss'
m.group(1)
'ab'
m.group(2)
'sss'
...
But two questions:

How can I operate a regex on a string variable?
I'm doing something wrong here:

f=r'abss'
f
'abss'
m = p.match( f )
m.group(0)
Traceback (most recent call last):
  File "<pyshell#15>", line 1, in <module>
    m.group(0)
AttributeError: 'NoneType' object has no attribute 'group'

Look closely: the regex contains 3 letter 's', but the string referred
to by f has only 2.

How do I implement a regex on a multiline string?  I thought this
might work but there's problem:

p = re.compile('(ab*)(sss)', re.S)
m = p.match( 'ab\nsss' )
m.group(0)
Traceback (most recent call last):
  File "<pyshell#26>", line 1, in <module>
    m.group(0)
AttributeError: 'NoneType' object has no attribute 'group'

Thanks for the newbie regex help, Lee

The string contains a newline between the 'b' and the 's', but the regex
isn't expecting any newline (or any other character) between the 'b' and
the 's', hence no match.
--
http://mail.python.org/mailman/listinfo/python-list

Reply via email to