Справочник функций

Ваш аккаунт

Войти через: 
Забыли пароль?
Регистрация
Информацию о новых материалах можно получать и без регистрации:

Почтовая рассылка

Подписчиков: -1
Последний выпуск: 19.06.2015

Удаление пробелов между тегами

2.0K
21 марта 2008 года
calgon
90 / / 27.06.2006
Хелло, пипл!
Есть такая трабла : необходимо убрать все пробелы (и любые пробельные символы - \n, \t...) в html-коде между тегами. К примеру, есть такой код :
[HTML]<html> <body>
Something <b>new</b> <i>hello!</i>
</body> </html>[/HTML]
Необходимо, чтоб на выходе было так :
[HTML]<html><body>Something <b>new</b> <i>hello!</i></body></html>[/HTML]

Подскажите регулярку на этот случай, плз.
9.5K
21 марта 2008 года
snubr
70 / / 30.10.2006
Я тут нахожу <br /> и заменяю на пустоту, .т.е. удаляю его и все.
Думаю тебе это же нужно использовать.
 
Код:
function Update ($str){
$str = ereg_replace("<br />","",$str);
return $str;
}
8
21 марта 2008 года
mfender
3.5K / / 15.06.2005
snubr, ты в каком веке живёшь?
353
21 марта 2008 года
Nixus
840 / / 04.01.2007
В простейшем варианте:
 
Код:
$s = "<html>    <body>
Something <b>new</b>       <i>hello!</i>
    </body>     </html>";
$s =~ s/(^|>)\s*(.*?)\s*(<|$)/$1$2$3/g;
print $s;
15K
21 марта 2008 года
hel
78 / / 10.11.2007
И вариант на PHP:

preg_replace("/\>(\\x20|\t|\r|\n)+\</", "><", $html);
2.0K
21 марта 2008 года
calgon
90 / / 27.06.2006
Спасибо всем за ответы.
Ответ оказался до боли прост :
 
Код:
preg_replace("/(\\n|\\r|\\t|\\0| {2,})/", "", $data_res2);

надо больше спать... :(
14K
22 марта 2008 года
Progr\.
72 / / 15.10.2007
Цитата:
preg_replace("/(\\n|\\r|\\t|\\0| {2,})/", "", $data_res2);


А ты уверен, что данный код не удалит лишнего?

8
22 марта 2008 года
mfender
3.5K / / 15.06.2005
Цитата: calgon
/(\\n|\\r|\\t|\\0| {2,})/


Пробел немного не так выглядит. \x20 - так лучше

2.1K
22 марта 2008 года
wAngel
129 / / 23.11.2004
Цитата: calgon
Хелло, пипл!
Есть такая трабла : необходимо убрать все пробелы (и любые пробельные символы - \n, \t...) в html-коде между тегами. К примеру, есть такой код :
[HTML]<html> <body>
Something <b>new</b> <i>hello!</i>
</body> </html>[/HTML]
Необходимо, чтоб на выходе было так :
[HTML]<html><body>Something <b>new</b> <i>hello!</i></body></html>[/HTML]

Подскажите регулярку на этот случай, плз.



чем не устраивает trim?
Результат будет аналогичный, но работает она на порядок быстрее регулярок.

8
22 марта 2008 года
mfender
3.5K / / 15.06.2005
ему же не края обрезать, а нужно удалять два и больше пробела, концы и начала строк.

Правда, в этой ситуации есть подводные грабли: если заменить конец строки, которая обычный текст, например в параграфе, на пустую строку, то пробела между ними не будет - два слова в одно сольются.
Реклама на сайте | Обмен ссылками | Ссылки | Экспорт (RSS) | Контакты
Добавить статью | Добавить исходник | Добавить хостинг-провайдера | Добавить сайт в каталог