Форум сайта python.su
0
Пытаюсь распарсить адреса
if re.findall(r'^([A-Za-zА-Яа-яёЁ]+\s+[A-Za-zА-Яа-я0-9]+[,-]?[A-Za-zА-Яа-я0-9]+)$', string):
return 'good\t\t' + string
else:
return '\t\t' + string
Гудыменка 15,275
good Ладожская 19,24
good Ладожская 19,24
Дудыкина 24а,50
Лермонотова 18,132
Лермонотова 18,132
good Веснина 1а,12
Узбекистанская 1а,108
Узбекистанская 1а,108
Узбекистанская 1а,108
Воронежская 1,242
Воронежская 1,242
Воронежская 1,242
Офлайн
32
у тя там скорее не уникод.
вот с уникодом:
# coding: utf-8
import re
d = [u'Гудыменка 15,275',u'Ладожская 19,24',u'Дудыкина 24а,50',u'Лермонотова 18,132',u'Узбекистанская 1а,108']
for s in d:
print '*'.join( re.findall(ur'(\w+)\s([\d\w]+)[,-]?(\d+)', s, re.U)[0] )
Гудыменка*15*275
Ладожская*19*24
Дудыкина*24а*50
Лермонотова*18*132
Узбекистанская*1а*108
Отредактировано (Дек. 26, 2010 09:46:41)
Офлайн
0
Ну тогда ничего не должно показывать или нет?
type(string) показывает str
спасибо за совет
Офлайн
32
alexlpstr - это грубо говоря “массив байтов”, не уникод.
Ну тогда ничего не должно показывать или нет?
type(string) показывает str
спасибо за совет
Офлайн
0
Спасибо за тему с ответами! (ключевой момент использование “re.U”)
Офлайн
0
Уже несколько лет не пользуюсь строкой:
# -*- coding: utf-8 -*-
Где-то прочитал, что в 3.х ее можно не писать (по умолчанию utf-8).
Комментарии я пишу на русском, все работает и вдруг Хрясь, облом и непонимание русских букв в utf-8.
Кто хочет проверить, сохраните нижеприведенные строки в кодировке utf-8 в файле test.py
Не верьте всему, что пишут.
Всегда ставьте # -*- coding: utf-8 -*-
print(“”“
Хочу выразить большую благодарность за обучение! Полученная информация оказалась доступной, понятной, полезной и очень интересной, она обязательно пригодится в моей практике! Это первый мой опыт дистанционного обучения и я очень довольна! Желаю вам успехов и дальнейшего процветания!
”“”)
Офлайн
857
aon24Во втором питоне надо было её ставить, потому что там по умолчанию используется us-ascii. Так что ты, скорее всего, запустил этот код во втором питоне. В винде такое бывает, если несколько питонов стоит.
Где-то прочитал, что в 3.х ее можно не писать (по умолчанию utf-8).
Отредактировано py.user.next (Март 4, 2017 06:37:33)
Офлайн