Regular Expression for the special character "|" pipe

Aman Kashyap amankashyap1223 at gmail.com
Tue May 27 07:39:14 EDT 2014


On Tuesday, 27 May 2014 16:59:38 UTC+5:30, Daniel  wrote:
> What about skipping the re and try this:
> 
> 
> 
> 'start=|ID=ter54rt543d|SID=ter54rt543d|end=|'.split('|')[1][3:]
> 
> 
> 
> On 27.05.2014 14:09, Vlastimil Brom wrote:
> 
> > 2014-05-27 12:59 GMT+02:00 Aman Kashyap <amankashyap1223 at gmail.com>:
> 
> >> I would like to create a regular expression in which i can match the "|" special character too.
> 
> >>
> 
> >> e.g.
> 
> >>
> 
> >> start=|ID=ter54rt543d|SID=ter54rt543d|end=|
> 
> >>
> 
> >> I want to only |ID=ter54rt543d| from the above string but i am unable to write the  pattern match containing "|" pipe too.
> 
> >>
> 
> >> By default python treat "|" as an OR operator.
> 
> >>
> 
> >> But in my case I want to use to as a part of search string.
> 
> >> --
> 
> > Hi,
> 
> > you can just escpape the pipe with backlash like any other metacharacter:
> 
> >
> 
> > r"start=\|ID=ter54rt543d"
> 
> >
> 
> > be sure to use the raw string notation r"...", or you can double all
> 
> > backslashes in the string.
> 
> >
> 
> > hth,
> 
> >     vbr

Thanks for the response.

I got the answer finally.

This is the regular expression to be used:\\|ID=[a-z]*[0-9]*[a-z]*[0-9]*[a-z]*\\|



More information about the Python-list mailing list