[Tutor] Regular expression - I

Mark Lawrence breamoreboy at yahoo.co.uk
Tue Feb 18 20:42:43 CET 2014


On 18/02/2014 18:03, Steve Willoughby wrote:
> Because the regular expression <H*> means “match an angle-bracket character, zero or more H characters, followed by a close angle-bracket character” and your string does not match that pattern.
>
> This is why it’s best to check that the match succeeded before going ahead to call group() on the result (since in this case there is no result).
>
>
> On 18-Feb-2014, at 09:52, Santosh Kumar <rhce.san at gmail.com> wrote:
>
>>
>> Hi All,
>>
>> If you notice the below example, case I is working as expected.
>>
>> Case I:
>> In [41]: string = "<H*>test<H*>"
>>
>> In [42]: re.match('<H\*>',string).group()
>> Out[42]: '<H*>'
>>
>> But why is the raw string 'r' not working as expected ?
>>
>> Case II:
>>
>> In [43]: re.match(r'<H*>',string).group()
>> ---------------------------------------------------------------------------
>> AttributeError                            Traceback (most recent call last)
>> <ipython-input-43-d66b47f01f1c> in <module>()
>> ----> 1 re.match(r'<H*>',string).group()
>>
>> AttributeError: 'NoneType' object has no attribute 'group'
>>
>> In [44]: re.match(r'<H*>',string)
>>
>>
>>
>> Thanks,
>> santosh
>>

Please do not top post on this list.

-- 
My fellow Pythonistas, ask not what our language can do for you, ask 
what you can do for our language.

Mark Lawrence

---
This email is free from viruses and malware because avast! Antivirus protection is active.
http://www.avast.com




More information about the Tutor mailing list