Найти - Пользователи
Полная версия: отловить служебный символ (с кодом 26)
Начало » Python для новичков » отловить служебный символ (с кодом 26)
1
Ev_Gen
Добрый день, подскажите как отловить в строке символ с кодом 26, а то что-то ни как не выходит.
Пробовал:1) for ch in line:
if ch==chr(26):
2) string.find(line,chr(26))
но увы…
Ed
Можете более развернутый пример дать? Может вы попутали системы счисления?
У меня вот все прекрасно находит:
>> a = 'bla-bla-bla\x1Abla-bla-bla'
>> a.find(chr(26))
11
>> a.find('\x1A')
11
Ev_Gen
Ed
Можете более развернутый пример дать? Может вы попутали системы счисления?
У меня вот все прекрасно находит:
>> a = 'bla-bla-bla\x1Abla-bla-bla'
>> a.find(chr(26))
11
>> a.find('\x1A')
11
У меня дамп базы данных в нём попадаются такие строки ‘Ростовское шоссе 12 Краснодар’ их надо отловить.
Вот что получилось
>>> a='Ростовское шоссе 12 Краснодар'
>>> a.find(chr(26))
-1
но
>>> a.find(chr(6))
34 # Почему 34?

видно они похожи
>>> print chr(26)

>>> print chr(6)


>>> len(a)
54
Русская буква стоит двух буржуйских? :)
Ed
Они не похожи вовсе. Просто у вас локаль не настроена.
А русские буквы таки да, в utf-8 все символы с кодами от 0x80 до 0x7ff 2 байтами кодируются.
Ev_Gen
Спасибо за помощь, дальше уже разберусь
This is a "lo-fi" version of our main content. To view the full version with more information, formatting and images, please click here.
Powered by DjangoBB