Master-X
Форум | Новости | Статьи
Главная » Форум » Программинг, Скрипты, Софт, Сервисы » 
Тема: Апостроф меняется на фиг знает что
цитата
03/10/08 в 13:58
 Proo
Беру из базы текст, почему то вместо одинарной кавычки (') ставится - ’. Может где то на более ранней фазе меняется, буду изучать.. но может кто-то уже сталкивался с такой проблемой?
цитата
03/10/08 в 14:16
 Alexandur
Покажи кусок текста.
Кавычку обычно экранируют перед добавлением в базу, может это у тебя делается специфическим образом ...
цитата
03/10/08 в 14:44
 Lamagro
я сталкивался - я хер знает почему но у некоторых спонсоров в промо десках апостроф и некоторые другие символы стоят в русской кодировке, скрипт спотыкается и матерится...
Спрашивал тут кстати ничего хорошего не придумали
В результате написал ручками скрипт замены всех "кривых" символов которые нашел и на этом остановился.
цитата
03/10/08 в 14:51
 Corex
Тоже сталкивался - эта байда из-за разных кодировок. Подобная одинарная кавычка не универсальная и её обычным способом не экранируешь. Можно поизвращаться, приводить к какой-то общей кодировке и заменять, можно руками, как Lamagro написал. Я тож руками такие кривые символы подбирал и реплейсами их...
цитата
03/10/08 в 15:02
 Proo
Цитата:
Тоже сталкивался - эта байда из-за разных кодировок. Подобная одинарная кавычка не универсальная и её обычным способом не экранируешь. Можно поизвращаться, приводить к какой-то общей кодировке и заменять, можно руками, как Lamagro написал. Я тож руками такие кривые символы подбирал и реплейсами их...


Спасибо, придется писать.. может подкинет кто код реплейсовый, чтоб не выковыривать эти "странные символы" icon_smile.gif? Или хотя бы список этих символов..

Если я буду менять

' на ’ напр, не прокатит? Ведь кавычка английская.. а вы говорите что в фиде какие то другие кавычки.. или по коду ее может менять, если возможно?
цитата
06/10/08 в 07:38
 Lamagro
ну я всмысле не руками заменял icon_smile.gif а добавил в код несколько реплэйсов по конкретным символам...

2Proo я кавычку в из одной кодировки менял в другую и все, дальше работал стандартными средствами
цитата
06/10/08 в 12:15
 asgor
preg_replace("/[^a-zA-Z0-9.;, !?()]/", "", $text)

оставляем только те что нужны, буквы , цифры, некоторые знаки препинания.
цитата
06/10/08 в 14:10
 Lamagro
asgor писал:
preg_replace("/[^a-zA-Z0-9.;, !?()]/", "", $text)

это всетаки немного нет то, проблему конечно решает но координально icon_smile.gif
А апострофы в тексте всетаки не зря стоят, мне нужна была именно замена корявого апострофа на нормальный
цитата
07/10/08 в 03:38
 Jоhn
asgor писал:
preg_replace("/[^a-zA-Z0-9.;, !?()]/", "", $text)

оставляем только те что нужны, буквы , цифры, некоторые знаки препинания.

хороший пример того как и где не нужно использовать RE

substr здесь вполне достаточно, а вообще есть такая функция в php html_entity_decode, только в данном случае может не подойти, потому что заменит и все остальное.
цитата
07/10/08 в 03:43
 xreload
узнай код символа или отображение в тексте и заменяй тупо на нужный.
цитата
07/10/08 в 05:48
 Lamagro
Jоhn писал:
html_entity_decode
это не подходит - потому как в результате в тексте появляются кракозябы
цитата
07/10/08 в 11:05
 Jоhn
Lamagro писал:
это не подходит - потому как в результате в тексте появляются кракозябы

ну тогда так попробуй-
Код:
$text = preg_replace('~&#x0*([0-9a-f]+);~ei', 'chr(hexdec("\\1"))', $text);
$text = preg_replace('~&#0*([0-9]+);~e', 'chr(\\1)', $text);

цитата
07/10/08 в 12:09
 Gourad
А строки у тебя не юникод? а то может http://ru.php.net/manual/en/function.iconv.php заюзать?
цитата
08/10/08 в 16:00
 Proo
спасибо всем, оценил )

Попробую что нибудь из насоветченного..
цитата
21/09/09 в 12:32
 Hellfire
А я недавно нашел еще такое же пидарастическое Тире!
�
цитата
21/09/09 в 14:51
 Lamagro
я вот не пойму нахуя у спонсоров такие тексты? icon_neutral.gif
цитата
21/09/09 в 15:16
 Cynic


это спецуёвый американский апостроф
нужен, чтобы наш авм задолбался ;)


Эта страница в полной версии