abclinuxu.cz AbcLinuxu.cz itbiz.cz ITBiz.cz HDmag.cz HDmag.cz abcprace.cz AbcPráce.cz
AbcLinuxu hledá autory!
Inzerujte na AbcPráce.cz od 950 Kč
Rozšířené hledání
×
    dnes 11:33 | IT novinky

    Nový open source router Turris Omnia NG je v prodeji. Aktuálně na Allegro, Alternetivo, Discomp, i4wifi a WiFiShop.

    Ladislav Hagara | Komentářů: 8
    dnes 05:44 | Komunita

    Na YouTube a nově také na VHSky byly zveřejněny sestříhané videozáznamy přednášek z letošního OpenAltu.

    Ladislav Hagara | Komentářů: 0
    dnes 04:33 | Komunita

    Jednou za rok otevírá společnost SUSE dveře svých kanceláří široké veřejnosti. Vítáni jsou všichni, kdo se chtějí dozvědět více o naší práci, prostředí ve kterém pracujeme a o naší firemní kultuře. Letos se dveře otevřou 26. 11. 2025 v 16:00. Můžete se těšit na krátké prezentace, které vám přiblíží, na čem naši inženýři v Praze pracují, jak spolupracujeme se zákazníky, partnery i studenty, proč máme rádi open source a co pro nás skutečně

    … více »
    SUSEMAS | Komentářů: 0
    dnes 04:22 | Komunita

    Na čem pracují vývojáři webového prohlížeče Ladybird (GitHub)? Byl publikován přehled vývoje za říjen (YouTube).

    Ladislav Hagara | Komentářů: 0
    dnes 04:11 | Zajímavý článek

    Jeff Quast otestoval současné emulátory terminálu. Zaměřil se na podporu Unicode a výkon. Vítězným emulátorem terminálu je Ghostty.

    Ladislav Hagara | Komentářů: 6
    včera 22:55 | IT novinky

    Amazon bude poskytovat cloudové služby OpenAI. Cloudová divize Amazon Web Services (AWS) uzavřela s OpenAI víceletou smlouvu za 38 miliard USD (803,1 miliardy Kč), která poskytne majiteli chatovacího robota s umělou inteligencí (AI) ChatGPT přístup ke stovkám tisíc grafických procesů Nvidia. Ty bude moci využívat k trénování a provozování svých modelů AI. Firmy to oznámily v dnešní tiskové zprávě. Společnost OpenAI také nedávno

    … více »
    Ladislav Hagara | Komentářů: 5
    včera 16:22 | Pozvánky

    Konference Prague PostgreSQL Developer Day 2026 (P2D2) se koná 27. a 28. ledna 2026. Konference je zaměřena na témata zajímavá pro uživatele a vývojáře. Příjem přednášek a workshopů je otevřen do 14. listopadu. Vítáme témata související s PostgreSQL či s databázemi obecně, a mohou být v češtině či angličtině.

    TomasVondra | Komentářů: 0
    včera 13:22 | Nová verze

    Byl vydán Devuan 6 Excalibur. Přehled novinek v poznámkách k vydání. Kódové jméno Excalibur bylo vybráno podle planetky 9499 Excalibur. Devuan (Wikipedie) je fork Debianu bez systemd. Devuan 6 Excalibur vychází z Debianu 13 Trixie. Devuan 7 ponese kódové jméno Freia.

    Ladislav Hagara | Komentářů: 4
    včera 10:44 | IT novinky

    Společnost Valve aktualizovala přehled o hardwarovém a softwarovém vybavení uživatelů služby Steam. Podíl uživatelů Linuxu poprvé překročil 3 %, aktuálně 3,05 %. Nejčastěji používané linuxové distribuce jsou Arch Linux, Linux Mint a Ubuntu. Při výběru jenom Linuxu vede SteamOS Holo s 27,18 %. Procesor AMD používá 67,10 % hráčů na Linuxu.

    Ladislav Hagara | Komentářů: 1
    včera 10:33 | Zajímavý projekt

    Joel Severin v diskusním listu LKML představil svůj projekt linuxového jádra ve WebAssembly (Wasm). Linux tak "nativně" běží ve webovém prohlížeči. Potřebné skripty pro převod jsou k dispozici na GitHubu.

    Ladislav Hagara | Komentářů: 1
    Jaké řešení používáte k vývoji / práci?
     (36%)
     (48%)
     (18%)
     (18%)
     (22%)
     (16%)
     (21%)
     (16%)
     (17%)
    Celkem 308 hlasů
     Komentářů: 15, poslední 2.11. 08:25
    Rozcestník

    Dotaz: [PHP] Jak zapsat regularni vyraz, aby to vzalo vsechny znaky i s \n?

    20.1.2006 18:26 babca
    [PHP] Jak zapsat regularni vyraz, aby to vzalo vsechny znaky i s \n?
    Přečteno: 347×
    Jak zapsat regularni vyraz, aby to vzalo vsechny znaky i s \n?

    "Vsechny" znaky se zapisou: . Znak konce radku je \n (v uvozovkach tedy \\n) Jak ale napsat, aby mi parser vzal uplne vsechny znaky i s konci radku?

    Dik..

    Odpovědi

    20.1.2006 18:55 machr
    Rozbalit Rozbalit vše Re: [PHP] Jak zapsat regularni vyraz, aby to vzalo vsechny znaky i s \
    .|\\n
    
    nejsem si jistej, ale . (tecka) by mela znamenat vsechny znaky vcetne znaku konce radku
    20.1.2006 21:07 babca
    Rozbalit Rozbalit vše Re: [PHP] Jak zapsat regularni vyraz, aby to vzalo vsechny znaky i s \
    Snažím se použít následující (všimněte si (.+), tím zbytkem se nezabývejte):

    $text = preg_replace("|\[$tag_name\](.+)\[/$tag_end\]|i", $replace[open]."\\1".$replace[close], $text)

    No a podle stránky http://www.root.cz/clanky/regularni-vyrazy-1/
    "....Tuto činnost obstará znak tečka (.). Při hledání jí vyhoví libovolný znak kromě konce řádku. ...."

    Tak jsem se snažil nahradit (.+) za něco ve stylu .|\\n - jak říkás - u mě tedy nějak takto - ([.|\\n]+), ale to mi php nebere!

    $text = preg_replace("|\[$tag_name\]([.|\\n]+)\[/$tag_end\]|i", $replace[open]."\\1".$replace[close], $text);
    Pomůže někdo? Kde je chyba? Dík...
    20.1.2006 22:14 machr
    Rozbalit Rozbalit vše Re: [PHP] Jak zapsat regularni vyraz, aby to vzalo vsechny znaky i s \

    zkuste tohle. nejsem si jistej, jestli u toho \n opravdu prijdou 2 zpetny lomitka jak pisete ve vasem puvodnim prispevku.

    $text = preg_replace("|\[$tag_name\](((.)|(\n))+)\[/$tag_end\]|i", $replace[open]."\\1".$replace[close], $text);
    

    par zavorek navic nikdy neuskodi ;)

    symbol '|' znamena 'nebo'. takze '.|\n' znamena tecka (libovolnej znak) nebo \n

    PS: pokud date cokoli do hranatych zavorek (vcetne tecky) tak je to mysleno jako libovolny 1 znak z tyhle zavorky

    20.1.2006 22:51 babca
    Rozbalit Rozbalit vše Re: [PHP] Jak zapsat regularni vyraz, aby to vzalo vsechny znaky i s \
    No a do hranatych zavorek se zadavaji povolene znaky, tak [.|\n]

    nekde jsem se stejne docet, ze ma byt \\n - stejne jako u \\1, \\2 - vstupni udaj ma byt \n (resp. \1, \2) - a aby se mohl napsat v php do uvozovek, musi se zpetna lomitka zdvojit.

    Jinak tvoje reseni zase nefunguje... :-(, zkousel jsem taky jeste plno dalsich variant jak toho myho, tak tvyho, ale stale to konci chybou typu Warning: Unknown modifier '\' in .... on line ...

    vadi mu aj ([u|a]+) atd, co delam spatne?

    jo a taky jsme se docet, ze kdyz je v hranatych zavorkach tecka, tak zastupuje normalni tecku... no nevim...
    21.1.2006 00:44 machr
    Rozbalit Rozbalit vše Re: [PHP] Jak zapsat regularni vyraz, aby to vzalo vsechny znaky i s \

    jak se na to divam, tak je tam spatne vic veci...

    1. funkce preg_replace ocekava jako prvni 2 parametry pole vyrazu a nahrad. pokud pro ni nemas nejaky specialni duvod, pouzi misto ni ereg_replace().

    2. ta chyba co ti to pise je vlastne varovani, ze tam mas neznamou escape-sequenci - treba hned to prvni \[ tusim neni platna. Zrejme tam patri dve lomitka jak u toho \n.

    tohle napr funguje:

    	$text = "
    	machr<br>
    	[xxx]<br>
    <br>
    	[/xxx]<br>
    	rulezzz<br>
    	";
    
    	print $text; print "<br>";
    	print "################################<br>";
    
    	$text = ereg_replace("\\[xxx\\](.|\\n)+\\[/xxx\\]", "REPLACED", $text);
    
    	print $text; print "<br>";
    
    VYSTUP:
    machr
    [xxx]
    
    [/xxx]
    rulezzz
    
    ################################
    machr
    REPLACED
    rulezzz
    

    teda, jestli sem pochopil spravne, ze to ma najit a nahradit vsechny retezce typu:

    [xxx] .... [/xxx]
    

    PS: pokud das do hranatych zavorek libovolny symbol (takze i tecku) tak zastupuje prave ten symbol a jeho specialni funkce je zrusena.

    21.1.2006 14:33 babča [www.oplatek.org]
    Rozbalit Rozbalit vše Re: [PHP] Jak zapsat regularni vyraz, aby to vzalo vsechny znaky i s \
    Hele moc dík, že sis s tím dal takovou práci...

    Ja byl pořád v domnění, že sviská čárka ( | ) se používá jen v oněch hranatých závorkách... :-)

    To by mohlo fungovat... asi nejsprávnější odpověď však našel halogen - modifikátor "s" - funguje to bezvadně...

    našl jsem ho vysvětlený třeba na (PHP.net)

    $text = preg_replace("|\[$tag_name\](.+)\[/$tag_end\]|Uis", $replace[open].$vlozit.$replace[close], $text);

    Jinak, s tema hranatyma zavorkama, to je zajimavy - ted nad tim premyslim...jaktoze to funguje s jednim lomitkem?

    Ano, poznals správně, tento kód je pro převod značek do html... :-)

    function nahradit_znacky_za_html ($text, $target_blank = "ne")
    {
    if ($target_blank == "ano")
    {
    $target_blank = "target='_blank'";
    }
    else
    {
    $target_blank = "";
    }

    $tag_array["b"] = array("open"=>"<b>", "close"=>"</b>");
    $tag_array["i"] = array("open"=>"<i>", "close"=>"</i>");
    $tag_array["u"] = array("open"=>"<u>", "close"=>"</u>");
    $tag_array["img"] = array("open"=>"<img src='", "close"=>"'>");
    $tag_array["mail=(.+)"] = array("open"=>"<a href='mailto:", "close"=>"'>\\2</a>");
    $tag_array["color=(.+)"] = array("open"=>"<span style='color: ", "close"=>"'>\\2</span>");
    $tag_array["size=(.+)"] = array("open"=>"<span style='font-size: ", "close"=>"'>\\2</span>");
    $tag_array["font=(.+)"] = array("open"=>"<span style='font-family: ", "close"=>"'>\\2</span>");
    $tag_array["url"] = array("open"=>"<a href='", "close"=>"' ".$target_blank.">\\1</a>");
    $tag_array["url=(.+)"] = array("open"=>"<a href='", "close"=>"' ".$target_blank.">\\2</a>");
    //$tag_array["url=?(http://)(.+)"] = array("open"=>"<a href='http://", "close"=>"' >\\2</a>");

    $tag_array["quote=(.+)"] = array("open"=>"<div class='komentare-diskuze-puvodni-autor'>\\1 napsal:</div><div class='komentare-diskuze-puvodni-text'>", "close"=>"</div></div>");

    foreach($tag_array as $tag_name=>$replace)
    {
    if (ereg("quote=.+", $tag_name))
    {
    $vlozit = "\\2";
    }
    else
    {
    $vlozit = "\\1";
    }

    $tag_end = preg_replace("/\W/Ui", "", $tag_name);
    $text = preg_replace("|\[$tag_name\](.+)\[/$tag_end\]|Uis", $replace[open].$vlozit.$replace[close], $text);
    }

    $text = str_replace("[hr]", "<<hr size='1' noshade>", $text);
    $text = str_replace("[br]", "<br />\n", $text);

    return $text;
    }

    jen jetě řeším, jak automaticky doplnit http:// do značek, kde adresa odkazu zčíná jen třeba www (bez http://)... Snažil jsem se o to na zakomentovaném řádku, ale to mi nejede (jak jinak, že)
    21.1.2006 10:11 Marek:)
    Rozbalit Rozbalit vše Re: [PHP] Jak zapsat regularni vyraz, aby to vzalo vsechny znaky i s \n?
    Asi je to tím, že regulární výrazy perlu, z kterých vychází php, tečku nezahrnují. viz http://www.linuxsoft.cz/article.php?id_article=1000
    21.1.2006 11:36 halogan | skóre: 7 | Praha
    Rozbalit Rozbalit vše Snadné řešení
    Modifikátor s :) |regexp|s
    vim isn't just for nerds

    Založit nové vláknoNahoru

    Tiskni Sdílej: Linkuj Jaggni to Vybrali.sme.sk Google Del.icio.us Facebook

    ISSN 1214-1267   www.czech-server.cz
    © 1999-2015 Nitemedia s. r. o. Všechna práva vyhrazena.