Может ли регулярное выражение соответствовать пробелу или началу строки?
Я пытаюсь заменить валюту аббревиатурой GBP символом £. Я мог бы просто соответствовать чему-либо, начиная с GBP, но я хотел бы быть немного более консервативным и искать определенные разделители вокруг него.
>>> import re
>>> text = u'GBP 5 Off when you spend GBP75.00'
>>> re.sub(ur'GBP([\W\d])', ur'£\g<1>', text) # matches GBP with any prefix
u'\xa3 5 Off when you spend \xa375.00'
>>> re.sub(ur'^GBP([\W\d])', ur'£\g<1>', text) # matches at start only
u'\xa3 5 Off when you spend GBP75.00'
>>> re.sub(ur'(\W)GBP([\W\d])', ur'\g<1>£\g<2>', text) # matches whitespace prefix only
u'GBP 5 Off when you spend \xa375.00'
Можно ли одновременно использовать оба последних примера?