Кодировка

12
Э
На сайте с 11.08.2009
Offline
191
741

Приветствую.

Мне приходится восстанавливать сайты с переносом на вордпресс, но столкнулся с тем, что иногда текст идет с какими-то скрытыми тегами, видимо, насколько я понял проблема возникает при переносе статьи с сайта, который имеет кодировку windows-1251. Не уверен что это именно из-за windows-1251, но вот сейчас с одним сайтом все именно так - переношу на вордпресс, соответственно с windows-1251 на utf-8.

Конкретно проблема состоит в том, что текст имеет жесткие переносы, и при копировании с исходника эти переносы остаются.

Допустим так:

"Карл у Клары

украл кораллы"

Чтобы привести это к одной строке "Карл у Клары украл кораллы", приходится проходить по всему тексту руками, что конечно бред - дергать каждую строку. В исходном коде конечно никаких тегов не видно.

Подскажите что это вообще за беда и как ее можно исправить (ну хоть с каждым текстом целиком а не построчно). Мои эксперименты с notepad++ ни к чему не привели или я не то делал.

Хотя, вот он этот знак, между кавычками: "

"

как его идентифицировать и удалить?

Спасибо за ответы и советы

В
На сайте с 04.07.2017
Offline
23
#1
Эдуардoff:

Хотя, вот он этот знак, между кавычками: "
"
как его идентифицировать и удалить?
Спасибо за ответы и советы

Если в notepad++, в поиске/замене установите режим поиска "Расширенный" и замените \r\n на пробел

если не все почистит, то \n

только эта операция удалит абсолютно все переносы строк.

Но можно это и непосредственно в базе sql-запросом сделать:


UPDATE table_name SET field_name=REPLACE(field_name,'\r\n',' ')
S
На сайте с 30.09.2016
Offline
469
#2
Эдуардoff:
Хотя, вот он этот знак, между кавычками: "
"
как его идентифицировать и удалить?

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

Отпилю лишнее, прикручу нужное, выправлю кривое. Вытравлю вредителей.
Э
На сайте с 11.08.2009
Offline
191
#3
Sitealert:
Надо посмотреть, какой это знак, и удалить его. В Вашем сообщении он не виден. Нам надо догадываться?

он между кавычками, как я и писал

"

"

сразу после верхней, видно если выделить обе кавычки

S
На сайте с 30.09.2016
Offline
469
#4
Вяземский:
если не все почистит, то \n

На странице сайта \n никак не проявляется.

В
На сайте с 04.07.2017
Offline
23
#5
Sitealert:
На странице сайта \n никак не проявляется.

в зависимости от того, как осуществляется вывод. Если через nl2br, то будут переносы

S
На сайте с 30.09.2016
Offline
469
#6
Эдуардoff:
он между кавычками, как я и писал
"
"
сразу после верхней, видно если выделить обе кавычки

Я здесь вижу только \r\n.

---------- Добавлено 10.08.2018 в 17:40 ----------

Вяземский:
в зависимости от того, как осуществляется вывод. Если через nl2br, то будут переносы
В этом случае в исходном коде будет br. А ТС ничего там не видит.
Э
На сайте с 11.08.2009
Offline
191
#7
Sitealert:
Я здесь вижу только \r\n.

Ну очевидно это оно и есть. Теперь хоть знаю что это такое...управляющие символы. Пока не столкнулся и не знал об их существовании.

Tortemon
На сайте с 09.07.2011
Offline
62
#8

Попробуйте отдельно поискать \r и отдельно \n. И в разных комбинациях (\r\n, \n\r).

Оба непечатных символа отвечают за перенос каретки, но один в винде, а другой в никсах. Возможно использовался какой-то один вариант.

При чем в поиске notepad++ надо отметить специальную галочку, отвечающую за поиск переносов каретки.

Веб и мобильная разработка [PHP, JS, Golang, Python, Java] (/ru/forum/998064)
Э
На сайте с 11.08.2009
Offline
191
#9

Да, notepad++ нашел "\r\n" и "\r" отдельно...правда еще есть знак, который он не определил - тоже между кавычками

"

"

В
На сайте с 04.07.2017
Offline
23
#10
Эдуардoff:
Да, notepad++ нашел "\r\n" и "\r" отдельно...

а \n?................

12

Авторизуйтесь или зарегистрируйтесь, чтобы оставить комментарий