In Python 2.6. Es scheint, dass Markierungen am Ende der Zeichenfolge $
und \Z
nicht mit Gruppenausdrücken kompatibel sind. Fo Beispiel
import re
re.findall("\w+[\s$]", "green pears")
kehrt
['green ']
(so $
funktioniert effektiv nicht). Und mit
re.findall("\w+[\s\Z]", "green pears")
führt zu einem Fehler:
/Library/Frameworks/Python.framework/Versions/2.6/lib/python2.6/re.pyc in findall(pattern, string, flags)
175
176 Empty matches are included in the result."""
--> 177 return _compile(pattern, flags).findall(string)
178
179 if sys.hexversion >= 0x02020000:
/Library/Frameworks/Python.framework/Versions/2.6/lib/python2.6/re.pyc in _compile(*key)
243 p = sre_compile.compile(pattern, flags)
244 except error, v:
--> 245 raise error, v # invalid expression
246 if len(_cache) >= _MAXCACHE:
247 _cache.clear()
error: internal: unsupported set operator
Warum das so funktioniert und wie um zu gehen?
'so $ effektiv nicht Werk' - Was ist Ihre erwartete Ausgabe ?? –
@RohitJain '['grün', 'Birnen']' (wie von '\ w + \ s'' plus' '\ w + $' '). –