Warning: Cannot use a scalar value as an array in /home/admin/public_html/forum/include/fm.class.php on line 757

Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/include/fm.class.php on line 770
Форумы портала PHP.SU :: Версия для печати :: убрать переносы строки в коде
Форумы портала PHP.SU » » Вопросы новичков » убрать переносы строки в коде

Страниц (1): [1]
 

1. incker - 22 Февраля, 2012 - 15:43:27 - перейти к сообщению
Здравствуйте!

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

см. принскрин.
текст отражаемый в браузере сплошной (красным)
а а если попросить браузер показать код страницы - он показывает текст с переносами строк (выделил зеленым)

мне нужно выделить "so" это целая первая строка, 1 слово, на этом месте может быть слово любой длины.

нужно отрезать от начала и до конца слова/ конца строки в коде

можно ли как-то парсить по перенос строки?
или убрать все переносы строки в коде, а не в том что отображает браузер? (чтоб переносы просто стали пробелами)

большое спасибо!
2. snikers987 - 22 Февраля, 2012 - 16:20:38 - перейти к сообщению
Цитата:
убрать переносы строки в коде

3. LIME - 22 Февраля, 2012 - 16:31:22 - перейти к сообщению
incker пишет:
чтоб переносы просто стали пробелами
4. incker - 22 Февраля, 2012 - 16:35:56 - перейти к сообщению
snikers987 пишет:
Цитата:
убрать переносы строки в коде



Спасибо!!))
Работает!!)) так просто!)
5. ugin_root - 22 Февраля, 2012 - 17:03:03 - перейти к сообщению
Цитата:
нужно отрезать от начала и до конца слова/ конца строки в коде

PHP:
скопировать код в буфер обмена
  1. setlocale(LC_ALL, "russian","ru_RU.UTF-8");
  2. $s = 'сталкивался с такой необходимостью однажды,
  3. подгружать текст из БД запретили,
  4. решил всё с помощью жабы.';
  5.  
  6.         $word = preg_split('#([\n\r]+)#Usi',$s);
  7.         $word = array_diff($word,array(''));
  8.         print_r($word);
  9.        
  10.         $s = preg_replace('#[^A-Za-zА-Яа-я0-9ЁёТтЫыХхШшЩщФфЦцЧч\s]+#Usi',' ',$s);
  11.         $word = preg_split('#([\s]+)#Usi',$s);
  12.         $word = array_diff($word,array(''));
  13.         print_r($word);


CODE (htmlphp):
скопировать код в буфер обмена
  1.  
  2. (
  3.     [0] => сталкивался с такой необходимостью однажды,
  4.     [2] => подгружать текст из БД запретили,
  5.     [4] => решил всё с помощью жабы.
  6. )
  7. (
  8.     [0] => сталкивался
  9.     [1] => с
  10.     [2] => такой
  11.     [3] => необходимостью
  12.     [4] => однажды
  13.     [7] => подгружать
  14.     [8] => текст
  15.     [9] => из
  16.     [10] => БД
  17.     [11] => запретили
  18.     [14] => решил
  19.     [15] => всё
  20.     [16] => с
  21.     [17] => помощью
  22.     [18] => жабы
  23. )
6. LIME - 22 Февраля, 2012 - 17:09:15 - перейти к сообщению
ugin_root пишет:
$word = array_diff($word,array(''));
не понял для чего это?
(Добавление)
если заменить
ugin_root пишет:
$word = preg_split('#([\n\r]+)#Usi',$s);
тогда будет смысл
7. ugin_root - 22 Февраля, 2012 - 17:38:58 - перейти к сообщению

удалить все элементы со строкой '',':', значением null и false


PHP:
скопировать код в буфер обмена
  1. $word=explode(PHP_EOL,$word);

заменить разбить по строкам в зависимости от операционной системы(!) юзера (Windows=>"\r\n",other=>"\n"), регулярка по сути делает то-же самое, но если юзер вдруг будит сидеть под виндой, а сервер будит стоят не на винде то останется символ \r(конец строки), а если наоборот то строка вообще не разобъётся т.к PHP_EOL под виндой равна "\r\n" а в других системах может использоваться просто "\n".
(Добавление)
Под виндой:
PHP:
скопировать код в буфер обмена
  1. var_dump(strlen(PHP_EOL));//int(2)

На бубунте:
PHP:
скопировать код в буфер обмена
  1. var_dump(strlen(PHP_EOL));//int(1)
8. LIME - 22 Февраля, 2012 - 17:51:51 - перейти к сообщению
пустой строки в массиве не может оказаться потому что в шаблоне +
null,false тоже не может по определению
строка 'null' это не null
ugin_root пишет:
а если наоборот то строка вообще не разобъётся
в текстовом файле конец строки автоматически меняется в зависимости от оси

 

Powered by ExBB FM 1.0 RC1