Autor Zpráva
Martin
Profil
Ahoj, dělám knihu hostů a mám menší problém s regulárními výrazy. Zamýšlel jsem, že když někdo do knihy napíše
Něco <<enter>>
něco <<enter>>
<<enter>>
<<enter>>
neco
<<enter>>
<<enter>>
<<enter>>
ahoj

tak z toho vyleze
<p>Něco <br />
neco
</p>
<p>neco</p>
<p>ahoj</p>

proste po více zmáčknutí enter se udělá nový odstavec, jinak <br />

nějak mi to nejde. Poradite mi s tim? Diky
Dušanko
Profil
str_replace("\n", "<br>", $prispevok);
alexo xhtml
str_replace("\n", "<br/>", $prispevok);

Zamení to odentrované riadky na tág br
halogan
Profil
$str = "Něco
něco


neco


ahoj";
$odstavce = preg_split("/\n{2,}/", $str);
function br($str)
{
return str_replace("\n", "<br />\n", $str);
}
$odstavce = array_map("br", $odstavce);

$vystup = "<p>" . implode("</p>\n<p>", $odstavce) . "</p>"

Promin, ze to delam tak slozite, ale dela to presne to, co potrebujes.
Martin
Profil
Chtel bych se jeste zeptat, jestli jde nejak vybrat poslopnost znaku, ktera neobsahuje \r\n ? Zkousel jsem neco takoveho (.[^\n][^\r])+ ,ale to moc nefacha. Dik
halogan
Profil
Martin: Jednoduse:
preg_split("\r\n", $txt, $s);

Proste rozdelis podle tohohle patternu, pak jen print_r($s) na kontrolu dat.
Toto téma je uzamčeno. Odpověď nelze zaslat.

0