On 2016-02-11 03:09, Larry Martell wrote:
On Wed, Feb 10, 2016 at 10:00 PM, MRAB <pyt...@mrabarnett.plus.com> wrote:
On 2016-02-11 02:48, Larry Martell wrote:
Given this string:
s = """|Type=Foo
... |Side=Left"""
print s
|Type=Foo
|Side=Left
I can match with this:
m = re.search(r'^\|Type=(.*)$\n^\|Side=(.*)$',s,re.MULTILINE)
print m.group(0)
|Type=Foo
|Side=Left
print m.group(1)
Foo
print m.group(2)
Left
But when I try and sub it doesn't work:
rn = re.sub(r'^\|Type=(.*)$^\|Side=(.*)$', r'|Side Type=\2
\1',s,re.MULTILINE)
print rn
|Type=Foo
|Side=Left
What very stupid thing am I doing wrong?
The 4th argument of re.sub is the count.
Thanks. Turned out that this site is running 2.6 and that doesn't
support the flags arg to sub. So I had to change it to:
re.sub(r'\|Type=(.*)\n\|Side=(.*)', r'\|Side Type=\2 \1',s)
You could've used the inline flag "(?m)" in the pattern:
rn = re.sub(r'(?m)^\|Type=(.*)$^\|Side=(.*)$', r'|Side Type=\2 \1',s)
--
https://mail.python.org/mailman/listinfo/python-list