|
|
|
| Есть переменная $soc в ней текст, разделенный на блоки конструкцией <br id="delim">
Кам можно, например, каждый двадцатый разделитель <br id="delim"> заменить на <br id="delim1">, чтобы после получить массив по 20 блоков? | |
|
|
|
|
|
|
|
для: Loneliness
(18.11.2007 в 11:35)
| | Попробуйте вот это:
<?php
$text = 'Есть переменная $soc в ней текст, разделенный на блоки конструкцией <br id="delim">
Есть переменная $soc в ней текст, разделенный на блоки конструкцией <br id="delim">
Есть переменная $soc в ней текст, разделенный на блоки конструкцией <br id="delim">
Есть переменная $soc в ней текст, разделенный на блоки конструкцией <br id="delim">
Есть переменная $soc в ней текст, разделенный на блоки конструкцией <br id="delim">
Есть переменная $soc в ней текст, разделенный на блоки конструкцией <br id="delim">
Есть переменная $soc в ней текст, разделенный на блоки конструкцией <br id="delim">';
print_r(preg_split('/((?:.*?<br id="delim">){2})/s', $text, -1, PREG_SPLIT_DELIM_CAPTURE|PREG_SPLIT_NO_EMPTY));
?>
|
| |
|
|
|
|
|
|
|
для: kasmanaft
(18.11.2007 в 12:34)
| | Чуток не то, что мне надо. Нужно именно каждый двадцатый разделитель <br id="delim"> заменить на другой- <br id="delim1"> . Затем я уже буду делать массив по новому разделителю и выводить из него элементы. Можно такое сделать?
P.S Приведенный Вами код тоже можно использовать, но в контексте конкретно моего скрипта это сильно усложняет последующий вывод. Хотелось бы обойтись без дополнительных правок кода. | |
|
|
|
|
|
|
|
для: Loneliness
(18.11.2007 в 13:47)
| | >> Нужно именно каждый двадцатый разделитель <br id="delim"> заменить на другой- <br id="delim1">
Ссстранно :)
Потом ведь explode() и получим то же самое... ?
Попробуйте тогда вот так:
preg_replace('/((?:.*?<br id="delim">){19})(.*?<br id=")delim">/s', '$1$2delim1">', $text); | |
|
|
|
|
|
|
|
для: kasmanaft
(18.11.2007 в 20:12)
| | Отлично, это именно то.:) | |
|
|
|