Z url udělat odkaz – PHP – Fórum – Programujte.com
 x   TIP: Přetáhni ikonu na hlavní panel pro připnutí webu
Reklama
Reklama

Z url udělat odkaz – PHP – Fórum – Programujte.comZ url udělat odkaz – PHP – Fórum – Programujte.com

 

Hledá se programátor! Plat 1 800 € + bonusy (firma Boxmol.com)
Vítězslav Titl0
Stálý člen
11. 7. 2006   #1
-
0
-

?au,

m?m ?et?zec ve kter?m se nach?z? adresy (jako url - p?. http://www.seznam.cz) jmenuje se $text. A j? bych cht?l aby m?sto:
TExt text http://programujte.com a text text text text http://www.seznam.cz.
Bylo:
TExt text <a href="http://programujte.com">http://programujte.com</a> a text text text text <a href="http://www.seznam.cz">http://www.seznam.cz</a>.

Nev?te n?kdo jak na to?

Moc d?ky :))

Nahlásit jako SPAM
IP: ...–
Co říct? Nic, mluví příspěvky.
Reklama
Reklama
11. 7. 2006   #2
-
0
-

To je nahrazovani pomoci regularnich vyrazu, nejspise pomoci funkce ereg_replace(). Koukni se do zdrojaku PHPrs, tam to urcite nekde bude :ok:

Nahlásit jako SPAM
IP: ...–
Prosím, jestli potřebujete s něčím poradit,zeptejte se na fóru. Jakýkoliv bezdůvodný pokus mě kontaktovat skončí okamžitým přidáním do ignore listu![br][br] Současný počet osob, které to nepochopily: 7
Iv@n0
Duch
11. 7. 2006   #3
-
0
-



$text = "TExt text http://programujte.com a text text text text http://www.seznam.cz text text www.server.cz/adresar/data";

$slova = split("[[:blank:]]+", $text);
for($i = 0; $i < count($slova); $i++)
{
$slova[$i] = trim($slova[$i]);
if (eregi("^(www..+..{2,4}.*)$", $slova[$i])) {
$odkaz = eregi_replace("^(www..+..{2,4}.*)$", "<a href="http://1">1</a> ", $slova[$i]);
} elseif (eregi("^(http://.+..{2,4}.*)$", $slova[$i])) {
$odkaz = eregi_replace("^(http://.+..{2,4}.*)$", "<a href="1">1</a> ", $slova[$i]);
} else {
$odkaz = $slova[$i] . " ";
}
$prevtext .= $odkaz;
}


V?sledek bude v prom?nn? $prevtext.
Pozn: URL adresy by m?ly b?t v prom?nn? $text odd?leny mezerou.

Nahlásit jako SPAM
IP: ...–
Vítězslav Titl0
Stálý člen
11. 7. 2006   #4
-
0
-

moc díky :D já jsem tohohle schopnej v pythonu,a le převést to do php byl těžký úkol pro mě:D

Nahlásit jako SPAM
IP: ...–
Co říct? Nic, mluví příspěvky.
geon0
Grafoman
11. 7. 2006   #5
-
0
-

Já taky :-) :

import re


text="TExt text http://programujte.com a text text text text http://www.seznam.cz."
print re.sub(r"(http://(?:w+.)+w+)", r'<a href="1">1</a>',text)

Nahlásit jako SPAM
IP: ...–
geon. volume doprava.
Vítězslav Titl0
Stálý člen
11. 7. 2006   #6
-
0
-

to je o dost hezčí;):)

Nahlásit jako SPAM
IP: ...–
Co říct? Nic, mluví příspěvky.
Ondrej Jur??ek
~ Moderátor
0
Stálý člen
14. 7. 2006   #7
-
0
-

Regularne vyrazy tiez rad pouzivat, ale v tomto pripade by som ich radsej nepouzil, kvoly rychlosti. Neviem, aky velky text sa bude spracovavat a ci vstupny format bude vzdy dodrzany. Ja by som pouzil nieco taketo:

$text = "TExt text http://programujte.com a text text text text http://www.seznam.cz";


$pole = explode(" ", $text);
for ($a = 0; $a < count($pole); $a++) {
if (strncmp($pole[$a], "http://", 7) == 0) {
$out .= "<a href=\"".$pole[$a]."\">".$pole[$a]."</a> ";
} else {
$out .= $pole[$a]." ";
}
}

echo $out;


A oproti kodu co uviedol Iv@n je o dost rychlejsi!
Tento kod: 30 ms
Iv@nov kod: 150 ms
(vstupny retazec mal cez 13 tisic znakov)

Nahlásit jako SPAM
IP: ...–
Michal Zima0
Super člen
15. 7. 2006   #8
-
0
-

Když už se tu tak zabýváme regulárními výrazy, tak bych se chtěl zeptat, jestli nevíte o nějakém kvalitním zdroji, kde dají naučit (jak web, tak třeba i kniha). Mockrát jsem se tomu už chtěl věnovat, ale nikdy jsem nic kloudnýho nenašel. Díky

Nahlásit jako SPAM
IP: ...–
Mandriva Linux 2007.1, KDE 3.5, Opera 9.22, vim 7.0...
geon0
Grafoman
15. 7. 2006   #9
-
0
-

Hezky stručně je to třeba v pspadu v helpu nebo [url=http://www.google.com/search?hl=cs&q=regul%C3%A1rn%C3%AD+v%C3%BDrazy&btnG=Vyhledat+Googlem&lr=]prvn?ch p?r odkaz?[/url] ;-)

Nahlásit jako SPAM
IP: ...–
geon. volume doprava.
Michal Zima0
Super člen
16. 7. 2006   #10
-
0
-

Tak už vím, kde jsem udělal chybu: pořád jsem po googlu chtěl, aby mi našel 'regulérní výrazy'.:))Díky moc

Nahlásit jako SPAM
IP: ...–
Mandriva Linux 2007.1, KDE 3.5, Opera 9.22, vim 7.0...
Zjistit počet nových příspěvků

Přidej příspěvek

Toto téma je starší jak čtvrt roku – přidej svůj příspěvek jen tehdy, máš-li k tématu opravdu co říct!

Ano, opravdu chci reagovat → zobrazí formulář pro přidání příspěvku

×Vložení zdrojáku

×Vložení obrázku

Vložit URL obrázku Vybrat obrázek na disku
Vlož URL adresu obrázku:
Klikni a vyber obrázek z počítače:

×Vložení videa

Aktuálně jsou podporována videa ze serverů YouTube, Vimeo a Dailymotion.
×
 
Podporujeme Gravatara.
Zadej URL adresu Avatara (40 x 40 px) nebo emailovou adresu pro použití Gravatara.
Email nikam neukládáme, po získání Gravatara je zahozen.
-
Pravidla pro psaní příspěvků, používej diakritiku. ENTER pro nový odstavec, SHIFT + ENTER pro nový řádek.
Sledovat nové příspěvky (pouze pro přihlášené)
Sleduj vlákno a v případě přidání nového příspěvku o tom budeš vědět mezi prvními.
Reaguješ na příspěvek:

Uživatelé prohlížející si toto vlákno

Uživatelé on-line: 0 registrovaných, 26 hostů

Podobná vlákna

čtení url/braní dat z url — založil tribalcz

Jak to udělat — založil Dave

Jak udělat aplikaci? — založil Jakub

Jak udělat Textcolor? — založil Mircosoft

Jak udělat gradient? — založil ingiraxo

 

Hostujeme u Českého hostingu       ISSN 1801-1586       ⇡ Nahoru Webtea.cz logo © 20032016 Programujte.com
Zasadilo a pěstuje Webtea.cz, šéfredaktor Lukáš Churý