purebasic.info

PureBasic forum
Текущее время: Сб янв 20, 2018 6:04 am

Часовой пояс: UTC + 3 часа




Начать новую тему Ответить на тему  [ Сообщений: 23 ]  На страницу Пред.  1, 2
Автор Сообщение
 Заголовок сообщения: Re: ReplaceString и регистр символов
СообщениеДобавлено: Вс авг 16, 2015 11:59 am 
Не в сети
МОДЕРАТОР
Аватар пользователя

Зарегистрирован: Пн апр 09, 2007 4:53 pm
Сообщений: 11080
Благодарил (а): 4 раз.
Поблагодарили: 385 раз.
newJS писал(а):
как обойти?
viewtopic.php?p=81374#p81374

_________________
Компьютер позволяет решать все те проблемы, которые до его изобретения не существовали. :) :)


Вернуться наверх
 Профиль  
 
 Заголовок сообщения: Re: ReplaceString и регистр символов
СообщениеДобавлено: Вс авг 16, 2015 2:56 pm 
Не в сети
профессор

Зарегистрирован: Вт май 13, 2014 4:12 am
Сообщений: 540
Благодарил (а): 53 раз.
Поблагодарили: 15 раз.
Пункты репутации: 5
m0t0d0r писал(а):
Настройки, убрать галку юникода
Файл -- Формат файла -- кодировка простой текст.

Вот зи за этого и не хочу с таким связываться, кто знает какие файлы попадутся.

m0t0d0r писал(а):
Ну так и подставь в тексте слеши перед проверкой

текст уже в переменной, крутить в цикле нужно все метасимволы, а потом регулярка ошибку выдаст, с немцев станится, вот и отказался от этой идеи.


Сделал так, вроде работает в полигоне, пойду в проге сделаю и буду реальные файлы править.
Код:
1
2
3
4
5
6
7
8
9
f=Len(re1):g=Len(re2):n=1:y=1:k=0
While n<>0
n=FindString(s, re1, y, c)
If n
s=Left(s, n-1)+re2+Mid(s, n+f)
y=n+g
k=2; флаг
EndIf
Wend





Пётр, ну и кто к ним в гости пойдёт?
и почему работает FindString? загадка.

Всем спасибо, разобрались и решение нашли.


Вернуться наверх
 Профиль  
 
 Заголовок сообщения: Re: ReplaceString и регистр символов
СообщениеДобавлено: Вс авг 16, 2015 3:41 pm 
Не в сети
профессор
Аватар пользователя

Зарегистрирован: Пт янв 27, 2012 7:12 pm
Сообщений: 880
Откуда: Кустанай
Благодарил (а): 27 раз.
Поблагодарили: 13 раз.
Пункты репутации: 7
newJS писал(а):
Вот зи за этого и не хочу с таким связываться, кто знает какие файлы попадутся.


А ты свой вариант скомпилируй в ANSII, а потом подсунь ему юникодный файл с русскими буквами :D . Я конечно не пробовал, но сдаются мне, что Result тебя неприятно удивит 8)

Вопрос на мильён, как распознать кодировку читаемого файла, есть там какие нить отметки, или наобум???

_________________
Детям нельзя в интернет. От детей интернет тупеет.


Вернуться наверх
 Профиль  
 
 Заголовок сообщения: Re: ReplaceString и регистр символов
СообщениеДобавлено: Вс авг 16, 2015 6:43 pm 
Не в сети
профессор

Зарегистрирован: Чт сен 22, 2011 6:21 pm
Сообщений: 216
Благодарил (а): 30 раз.
Поблагодарили: 21 раз.
Пункты репутации: 0
m0t0d0r писал(а):
Вопрос на мильён

https://ru.wikipedia.org/wiki/%D0%9C%D0%B0%D1%80%D0%BA%D0%B5%D1%80_%D0%BF%D0%BE%D1%81%D0%BB%D0%B5%D0%B4%D0%BE%D0%B2%D0%B0%D1%82%D0%B5%D0%BB%D1%8C%D0%BD%D0%BE%D1%81%D1%82%D0%B8_%D0%B1%D0%B0%D0%B9%D1%82%D0%BE%D0%B2
ps. правда ради справедливости следует сказать, что маркера может и не быть. (зависит от того в чем создан файл)
В пурике можно использовать ReadStringFormat(#File) для распознавания маркера (если он есть)


Вернуться наверх
 Профиль  
 
 Заголовок сообщения: Re: ReplaceString и регистр символов
СообщениеДобавлено: Вс авг 16, 2015 7:51 pm 
Не в сети
МОДЕРАТОР

Зарегистрирован: Вт дек 05, 2006 8:46 am
Сообщений: 6224
Благодарил (а): 16 раз.
Поблагодарили: 173 раз.
Пункты репутации: 48
m0t0d0r писал(а):
Вопрос на мильён, как распознать кодировку читаемого файла, есть там какие нить отметки, или наобум???

Вопрос действительно не простой. На 100% кодировку произвольного текста распознать автоматически невозможно.
Тем более, что могут быть и мешенные кодировки в пределах одного текста.
В Windows API есть функция IsTextUnicode, позволяющая с определенной долей вероятности узнать, в Unicode ли переданный ей текст или нет.
Есть алгоритм для utf8.
А что не определяется как Unicode и utf8 предположительно ASCII.
Я реализовывал такую проверку однажды в простеньком редакторе HTML, на реальных текстах почти ни когда не ошибался с выбором кодировки.

_________________
read-only


Вернуться наверх
 Профиль  
 
 Заголовок сообщения: Re: ReplaceString и регистр символов
СообщениеДобавлено: Пн авг 17, 2015 3:19 pm 
Не в сети
профессор

Зарегистрирован: Вт май 13, 2014 4:12 am
Сообщений: 540
Благодарил (а): 53 раз.
Поблагодарили: 15 раз.
Пункты репутации: 5
m0t0d0r писал(а):
А ты свой вариант скомпилируй в ANSII

Не, даже пробовать не буду.
Когда начинал на РВ пробовал по всякому, сейчас все в utf8 и вроде нет проблем.
Вот тут по этому поводу я уже выкладывал про кодировки
http://purebasic.info/phpBB3ex/viewtopic.php?f=13&t=1661&p=80493&hilit=ReadStringFormat+%D0%BF%D1%80%D0%B8+%D1%87%D1%82%D0%B5%D0%BD%D0%B8%D0%B8+%D1%84%D0%B0%D0%B9%D0%BB%D0%B0+%D0%B2%D0%BE%D0%B7%D0%B2%D1%80%D0%B0%D1%89%D0%B0%D0%B5%D1%82#p80493

kvitaliy писал(а):
Вопрос действительно не простой. На 100% кодировку произвольного текста распознать автоматически невозможно.

Русский редактор Akell Pad хорошо распознаёт огромное количество кодировок, кому интересно можно на форуме редактора вопросы позадовать.


Вернуться наверх
 Профиль  
 
 Заголовок сообщения: Re: ReplaceString и регистр символов
СообщениеДобавлено: Пн авг 17, 2015 3:24 pm 
Не в сети
PureBasic Coder
Аватар пользователя

Зарегистрирован: Чт ноя 10, 2011 10:50 am
Сообщений: 4049
Откуда: Ростов-на-Дону
Благодарил (а): 70 раз.
Поблагодарили: 80 раз.
Пункты репутации: 24
Notepad++ тоже неплохо, только там еще и открыты исходники

_________________
Пурик - лучший язык программирования


Вернуться наверх
 Профиль  
 
 Заголовок сообщения: Re: ReplaceString и регистр символов
СообщениеДобавлено: Пн авг 17, 2015 4:56 pm 
Не в сети
МОДЕРАТОР

Зарегистрирован: Вт дек 05, 2006 8:46 am
Сообщений: 6224
Благодарил (а): 16 раз.
Поблагодарили: 173 раз.
Пункты репутации: 48
Akell Pad, Notepad++ это детские игрушки в области распознавания кодировок по сравнению с утилитой «Штирлиц», которая способна расшифровывать практически любые тексты, написанные в различных кодировках, транслитерации, а также отобразить двоичные данные, зашифрованные в текстовой форме или тексты, которые подверглись смешанному перекодированию, uuencode, xxencode, base64, binhex, BtoA. Программа может обрабатывать тексты, содержащие фрагменты, написанные в нескольких различных кодировках.
Но 100% не гарантирует даже она. :D

_________________
read-only


Вернуться наверх
 Профиль  
 
Показать сообщения за:  Сортировать по:  
Начать новую тему Ответить на тему  [ Сообщений: 23 ]  На страницу Пред.  1, 2

Часовой пояс: UTC + 3 часа


Кто сейчас на форуме

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 1


Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете добавлять вложения

Найти:
Перейти:  
Создано на основе phpBB® Forum Software © phpBB Group (блог о phpBB)
Сборка создана CMSart Studio
Русская поддержка phpBB