Navigacija
Lista poslednjih: 16, 32, 64, 128 poruka.

Regularni izrazi

[es] :: PHP :: Regularni izrazi

Strane: 1 2

[ Pregleda: 7863 | Odgovora: 20 ] > FB > Twit

Postavi temu Odgovori

Autor

Pretraga teme: Traži
Markiranje Štampanje RSS

ljuba
Aleksandar Ljubojevic
Marketing Director
Sid/Novi Sad/Malta/Cyprus

Član broj: 1475
Poruke: 203
195.158.81.*

ICQ: 21352441
Sajt: www.linkedin.com/in/aleks..


Profil

icon Regularni izrazi04.11.2007. u 18:09 - pre 199 meseci
Pozdrav

Ako imam fajl a.txt koji je sadrzine:

ime=pera#prezime=peric#adresa=neka1<br>
ime=mika#prezime=mikic#adresa=neka2<br>
ime=zika#prezime=zikic#adresa=neka3<br>
...

i ako imam u mom php skriptu:

Code:
$page = file_get_contents('a.txt');
preg_match_all('/ime=(.*?)#prezime/si', $page, $result1);
preg_match_all('/prezime=(.*?)#adresa/si', $page, $result2);
preg_match_all('/adresa=(.*?)\<br\>/si', $page, $result3);
$ime = ($result1[1]) ? $result1[1] : '0';
$prezime = ($result2[1]) ? $result2[1] : '0';
$adresa = ($result3[1]) ? $result3[1] : '0';


Tada posle idem sa $result1[$i] kroz petlju i ispisujem imena - takodje i za prezimena i adrese. To bi trebalo da radi OK.

Pitanja:
1. Kako da znam koliko sam nasao imena (duzina niza) a da nemoram da idem sa foreach kroz niz?
2. Kako da promenim preg_match_all komandu da bi u jednoj liniji dobio sva 3 niza - result1, result2 i result3?

Hvala
Pozdrav

LJUBA
 
Odgovor na temu

ColdKeyboard
Sasa Karanovic
Hardware and Firmware Engineer
Toronto, Canada

Član broj: 31924
Poruke: 868
*.com
Via: [es] mailing liste

Jabber: ColdKeyboard
Sajt: www.SasaKaranovic.com


+11 Profil

icon Re: Regularni izrazi04.11.2007. u 18:21 - pre 199 meseci
Koristi funkciju count da izbrojis unose.
http://www.php.net/count

stavi regexp da ti izgleda ovako"
preg_match('/ime=(.*?)#prezime=(.*?)#adresa=(.*?)<br>/si', $page, $regs);

$result[0] ti je prva linija koja ima match,
$result[0][0] ti je ime u prvoj liniji
$result[0][1] ti je prezime u prvoj liniji
$result[0][2] ti je adresa u prvoj liniji

$result[1][0] ti je ime u drugoj liniji

itd... za ovo ti je najbolje da uradis foreach petlju pa da radi ispis
svih imena koje ima u $result

Ako ti jos nesto treba ili imas jos nesto nejasno pitaj...

--
-==ColdKeyboard==-
www.MrdniSe.com
www.SasaKaranovic.com
 
Odgovor na temu

ljuba
Aleksandar Ljubojevic
Marketing Director
Sid/Novi Sad/Malta/Cyprus

Član broj: 1475
Poruke: 203
195.158.81.*

ICQ: 21352441
Sajt: www.linkedin.com/in/aleks..


Profil

icon Re: Regularni izrazi04.11.2007. u 18:29 - pre 199 meseci
Hvala puno.

Cini mi se da ce biti OK, ali javljam se cim probam.

PS: Ti RE su mi stvarno ko iz druge dimenzije da su pali :)

Puno pozdrava
Pozdrav

LJUBA
 
Odgovor na temu

ljuba
Aleksandar Ljubojevic
Marketing Director
Sid/Novi Sad/Malta/Cyprus

Član broj: 1475
Poruke: 203
*.datastream.com.mt.

ICQ: 21352441
Sajt: www.linkedin.com/in/aleks..


Profil

icon Re: Regularni izrazi05.11.2007. u 13:57 - pre 199 meseci
Znaci pomenuti link http://www.google.com/search?q...urity.org&hl=en&num=42 vraca result stranu:

some not important code1
<h2 class="r"><a href="http://asp-cyber.law.harvard.edu/filtering/list.html" class="l" onmousedown="return rwt(this,'','','res','1','AFQjCNFVCAwOP070r0f0EZkBm5Yfj9r5yQ','&sig2=LBWIL-caH6ZEWzrkho21VQ')">Sites Inaccessible in China - Documentation of Internet Filtering <b>...</b></a></h2>
some not important code2
<h2 class="r"><a href=" http://www.pungas.com/index.php?prikaz=vijest&amp;id=2986" class="l" onmousedown="return rwt(this,'','','res','2','AFQjCNEcA--vhR4SXd7w3L4ApxnJkTXPaA','&sig2=kaiXF-17P-9weejPPVRigA')"> Pungas.Com - U helikopterskoj nesreći poginuo Colin McRae <b>...</b></a></h2>
some not important code3
<h2 class="r"><a href="http://www.pungas.com/?id=1481&amp;prikaz=vijest " class="l" onmousedown="return rwt(this,'','','res','3','AFQjCNHOKd-B2TrSznDjSfLAvl2kbcz_pA','&sig2=gVXoUEcID10ZW954tA6g1A')">Pungas.Com - - AutoMoto vijesti, sport, Formula 1</a></h2>
some not important code4
<h2 class="r"><a href="http://www.pungas.com/forum/potrebne-naocale-t-19770.html" class="l" onmousedown="return rwt(this,'','','res','4','AFQjCNG9e4ZZFF7YNxUfscCxB746gzW8tg','&sig2=fElR-J06DwZ7E9Gcq8KqnA')">Potrebne naocale!!!</a></h2>
some not important code5
itd ... do maksimalno 42
some not important codeX

Znaci ponavljajuca grupa koju ciljam je <h2...> </h2>

PHPSkript je:

Code:
<?php
$url = "http://www.google.com/search?q...urity.org&hl=en&num=42";
$v = file_get_contents($url);
preg_match_all('/\<h2(.*?)\>\<a href=(.*?) class=(.*?)\>(.*?)\<\/a\>\<\/h2\>/si',$v,$r);
$i = 0;
while ($i < 42) {
    $adresa1 = ($r[0][$i]) ? $r[0][$i] : '0';
    $adresa2 = ($r[1][$i]) ? $r[1][$i] : '0';
    $adresa3 = ($r[2][$i]) ? $r[2][$i] : '0';
    $adresa4 = ($r[3][$i]) ? $r[3][$i] : '0';
    $adresa5 = ($r[4][$i]) ? $r[4][$i] : '0';
    echo $i+1 . ":<br>" . $adresa1 . "<br>" . $adresa2 . "<br>" . $adresa3 . "<br>" . $adresa4 . "<br>" . $adresa5 . "<hr>";
    $i++;
};
?>


Moj skript bi morao da vrati:

1:
http://asp-cyber.law.harvard.edu/filtering/list.html
1
AFQjCNFVCAwOP070r0f0EZkBm5Yfj9r5yQ
&sig2=LBWIL-caH6ZEWzrkho21VQ
Sites Inaccessible in China - Documentation of Internet Filtering

2:
http://www.pungas.com/index.php?prikaz=vijest&amp;id=2986
2
AFQjCNEcA--vhR4SXd7w3L4ApxnJkTXPaA
&sig2=kaiXF-17P-9weejPPVRigA
Pungas.Com - U helikopterskoj nesreći poginuo Colin McRae

3:
http://www.pungas.com/?id=1481&amp;prikaz=vijest
3
AFQjCNHOKd-B2TrSznDjSfLAvl2kbcz_pA
&sig2=gVXoUEcID10ZW954tA6g1A
Pungas.Com - - AutoMoto vijesti, sport, Formula 1

4:
http://www.pungas.com/forum/potrebne-naocale-t-19770.html
4
AFQjCNG9e4ZZFF7YNxUfscCxB746gzW8tg
&sig2=fElR-J06DwZ7E9Gcq8KqnA
Potrebne naocale!!!

Ali meni vraca samo 0-le


Pozdrav

LJUBA
 
Odgovor na temu

Nemanja Avramović
Engineering Manager
MENU Technologies
Beograd, Srbija

Moderator
Član broj: 32202
Poruke: 4391
77.46.173.*

Sajt: https://avramovic.info


+46 Profil

icon Re: Regularni izrazi05.11.2007. u 15:37 - pre 199 meseci
Jedan savet: Skini Regex Coach pa u njemu testiraj svoje izraze
Laravel Srbija.

[NE PRUŽAM PODRŠKU ZA PHP PREKO PRIVATNIH PORUKA!]
 
Odgovor na temu

ljuba
Aleksandar Ljubojevic
Marketing Director
Sid/Novi Sad/Malta/Cyprus

Član broj: 1475
Poruke: 203
*.datastream.com.mt.

ICQ: 21352441
Sajt: www.linkedin.com/in/aleks..


Profil

icon Re: Regularni izrazi05.11.2007. u 17:10 - pre 199 meseci
Citat:
Nemanja Avramović: Jedan savet: Skini Regex Coach pa u njemu testiraj svoje izraze ;)
Cudo je ovaj program ...

Nekako sam selektovao sta zelim ali kad ubacim taj RE u moj kod - opet mi ispisuje 0 :(

Pozdrav

LJUBA
Prikačeni fajlovi
 
Odgovor na temu

ColdKeyboard
Sasa Karanovic
Hardware and Firmware Engineer
Toronto, Canada

Član broj: 31924
Poruke: 868
*.teol.net.

Jabber: ColdKeyboard
Sajt: www.SasaKaranovic.com


+11 Profil

icon Re: Regularni izrazi05.11.2007. u 20:28 - pre 199 meseci
Ako radis preg_match_all() pokreni taj kod onda probaj da radis print_r($result) da vidis da li uopste dobijas neku vrijednost iz tog preg_match_all ako dobijes array() znaci da ti izraz nije tacan ili ne radi...
 
Odgovor na temu

Nemanja Avramović
Engineering Manager
MENU Technologies
Beograd, Srbija

Moderator
Član broj: 32202
Poruke: 4391
77.46.173.*

Sajt: https://avramovic.info


+46 Profil

icon Re: Regularni izrazi05.11.2007. u 21:47 - pre 199 meseci
Nisam podrobnije gledao, ali obrati pažnju na eskejpovanje navodnika, apostrofa i ostalih karaktera koji bi trebalo da se eskejpuju. Meni je to često pravilo problem.
Laravel Srbija.

[NE PRUŽAM PODRŠKU ZA PHP PREKO PRIVATNIH PORUKA!]
 
Odgovor na temu

ljuba
Aleksandar Ljubojevic
Marketing Director
Sid/Novi Sad/Malta/Cyprus

Član broj: 1475
Poruke: 203
*.datastream.com.mt.

ICQ: 21352441
Sajt: www.linkedin.com/in/aleks..


Profil

icon Re: Regularni izrazi06.11.2007. u 13:27 - pre 199 meseci
Konacno sam nahvatao Linux/Perl/... administratora u firmi i ubi covek skript za 10 minuta :|

Evo resenje pa kome treba nek uzme. Sta mislite o resenju?

PS: Nemojte da odkomentarisete zakomentarisani red da vam ne rokne IE/FF :)

Code:

<?php

function getpage($url) {
  $data = file_get_contents($url);
  $nummatches = preg_match_all("/<h2 class=r><a href=\"([^\"]+)\" class=l>(.+?)<\/a><\/h2>.*?<font size=-1>(.+?)<br><span class=a>/i", $data, $matches);
  $numresults = preg_match("/Results <b>([0-9]+)<\/b>.*?<b>([0-9]+)<\/b> of about <b>([0-9,]+)<\/b> linking to/i", $data, $resmatches);

  echo "start: ".$resmatches[1]."\n<br/>";
  echo "end: ".$resmatches[2]."\n<br/>";
  echo "total number of results: ".$resmatches[3]."\n<br/>";

  if (preg_match("/<a href=\"([^\"]+)\"><img src=\/intl\/en\/nav_next.gif width=100 height=26 alt=\"\" border=0><br>Next<\/a>/i", $data, $nextmatch)) {
    echo "<br/>Next link: ".$nextmatch[1]."\n<br/><br/>";
  }

  echo "$nummatches matches\n\n<br/><br/>";
  
  for ($i = 0; $i < $nummatches; $i++) {
    echo "title: ".$matches[2][$i]."\n<br/>link: ".$matches[1][$i]."\n<br/>";
    echo "descr: ".$matches[3][$i]."\n<br/>\n<br/>";
  }

  if (isset($nextmatch[1])) {
//    getpage("http://www.google.com".$nextmatch[1]);
  }

}

function searchdetails($site) {
  $url = "http://www.google.com/search?q=link:$site&hl=en&num=42";
  getpage($url);
}

searchdetails("www.elitesecurity.org");

?>

Pozdrav

LJUBA
 
Odgovor na temu

makidip

Član broj: 206577
Poruke: 3
79.101.176.*



Profil

icon Re: Regularni izrazi26.03.2009. u 19:11 - pre 182 meseci
Molim vas, ako neko moze da mi resi sledece zadatke:

1. Sastavite regularni izraz koji opisuje sve oblike jednine naziva za tri narečja nekadašnjeg srpskohrvatskog jezika.
2. Sastavite regularni izraz koji opisuje sve oblike prisvojnih prideva na –ski, -čki, -ški nominativa i akuzativa jednine i množine.
3. Sastavite regularni izraz koji izdvaja sve oblike lične zamenice za treće lice jednine (muški, ženski i srednji rod).
4. Sastavite regularni izraz koji izdvaja sve reči koje sadrže prefiks „kultur“.
5. Sastavite regularni izraz koji izdvaja sve sve oblike broja "jedan" i njegove slozenice.

Hvala vam unapred.
 
Odgovor na temu

Man-Wolf
Mihailo Joksimovic
Beograd

Član broj: 17016
Poruke: 873
*.eunet.yu.



+13 Profil

icon Re: Regularni izrazi26.03.2009. u 19:17 - pre 182 meseci
Pazi, prvo, najverovatnije niko nece hteti da ti radi zadatke, ako prethodno nisi sam pokusao.

Drugo, jel treba ovo da sastavljas u PHP-u, ili je bitno samo da formiras regularne izraze ?

Trece, ostavi nam bar objasnjenja zadataka. Konkretno - "sve oblike jednine naziva za tri narečja nekadašnjeg srpskohrvatskog jezika." - ja iskreno pojma nemam kako izgledaju oblici jednine za sva tri narecja .... Znaci objasni kako to izgleda .... :-)

Pozdrav

EDIT:

4. Sastavite regularni izraz koji izdvaja sve reči koje sadrže prefiks „kultur“.

Code:

"kultur*" 

 
Odgovor na temu

makidip

Član broj: 206577
Poruke: 3
79.101.176.*



Profil

icon Re: Regularni izrazi26.03.2009. u 19:50 - pre 182 meseci
Potrebno je samo da se formira regularni izraz. Narecja su: cakavsko, kajkavsko i stokavsko. Oblici licne zamenice za trece lice jednine su: on, ona, ono...
 
Odgovor na temu

Man-Wolf
Mihailo Joksimovic
Beograd

Član broj: 17016
Poruke: 873
*.eunet.yu.



+13 Profil

icon Re: Regularni izrazi26.03.2009. u 20:08 - pre 182 meseci
Pa da bi samo to uradili, treba samo da znamo kako izgleda neka rec na stokavskom, kajkavskom i cakavskom narecju.

2. Sastavite regularni izraz koji opisuje sve oblike prisvojnih prideva na –ski, -čki, -ški nominativa i akuzativa jednine i množine.
Code:

// Ovo bi trebalo da radi za ski, cki, ski. Sto se tice nominativa i akuzativa jednine i mnozine, zaista ne znam kako to izgleda.

"[\w]+[sčš]ki"

 
Odgovor na temu

Man-Wolf
Mihailo Joksimovic
Beograd

Član broj: 17016
Poruke: 873
*.eunet.yu.



+13 Profil

icon Re: Regularni izrazi26.03.2009. u 20:16 - pre 182 meseci
Code:

$text = "Marko je udario pericu po mički, a onda su on i njegov drugar bliski otišli da on viški.";
    
preg_match_all("/[\w]+[sšč]ki/", $text, $matches);
    
print_r($matches);

// Izlaz:

Array
(
    [0] => Array
        (
            [0] => mički
            [1] => bliski
            [2] => viški
        )

)


EDIT: Izvinjavam se zbog vulgarnosti, ali ovo mi je prvo palo na pamet kad sam hteo da isprobam da l' radi ok, a u zurbi sam tako da nisam bas mogao mnogo da razmisljam :-D

Edit by Daki Pro: Zamaskirane vulgarnosti

[Ovu poruku je menjao dakipro dana 27.03.2009. u 08:27 GMT+1]
 
Odgovor na temu

Vladica Savić
Software Developer
Toronto, Canada

Član broj: 26699
Poruke: 654



+5 Profil

icon Re: Regularni izrazi27.03.2009. u 00:08 - pre 182 meseci
Malkice mozda offtopic, jos jedan program koji mnogo moze da vam olaksa rad za kreiranje 'regularnih izraza' je i Expresso
 
Odgovor na temu

Bojana Kukulj
student

Član broj: 181291
Poruke: 4
*.static.kdsinter.net.



Profil

icon Re: Regularni izrazi16.02.2010. u 16:41 - pre 171 meseci
evo posle godinu dana ista tema
:)
naime, mucim se s ovim regularnim izrazom (za ispit, ne sto sam radoznala:)
treba da sastavim regularni izraz koji sadrzi sve oblike zamenica treceg lica
dakle, on, ona, ono, oni, one
i sad se mucim
stavila sam


on*[a,o,i,e]

medjutim, ne izlazi mi on
ne znam koji znak da stavim da bih rekla da zelim i on da mi prepozna, dakle ne samo da sadrzi on vec i da ga prepozna kad je samo

unapred hvala
i ako neko zna gde mogu vise da saznam o tim oznakama, nek baci link
hvalaaaa
 
Odgovor na temu

Man-Wolf
Mihailo Joksimovic
Beograd

Član broj: 17016
Poruke: 873
*.adsl.beotel.net.



+13 Profil

icon Re: Regularni izrazi16.02.2010. u 16:52 - pre 171 meseci
Mislim da bi ovo trebalo da radi:

Code:

on[aoie]?


http://www.regular-expressions.info/
 
Odgovor na temu

Bojana Kukulj
student

Član broj: 181291
Poruke: 4
*.static.kdsinter.net.



Profil

icon Re: Regularni izrazi16.02.2010. u 17:12 - pre 171 meseci
bravo!!
radi
divno! hvala ti
sad cu se malo pozabaviti tim znacima :)
 
Odgovor na temu

Bojana Kukulj
student

Član broj: 181291
Poruke: 4
*.static.kdsinter.net.



Profil

icon Re: Regularni izrazi16.02.2010. u 18:30 - pre 171 meseci
ne mogu da pronadjem na tom sajtu (ili nisam povezala da je o tome rec)
kad na primer hocu da nadjem neku rec i prvu koja joj sledi
npr. jezik i sledecu rec
znas li koja je naredba da mi ukljuci i sledecu rec?
kapiram da trazim jezik i njegove oblike
jezik[a-w]*
al ne znam dalje


tesko bre ovo :)
 
Odgovor na temu

beep
Srbija/Vrbas

Član broj: 19294
Poruke: 198
*.dynamic.sbb.rs.

Sajt: keselj.xyz


+1 Profil

icon Re: Regularni izrazi16.02.2010. u 18:39 - pre 171 meseci
Code:
jezik\s\w+


ako ti je sledeca rec u sledecem redu onda

Code:
/jezik.*?\w+/s
 
Odgovor na temu

[es] :: PHP :: Regularni izrazi

Strane: 1 2

[ Pregleda: 7863 | Odgovora: 20 ] > FB > Twit

Postavi temu Odgovori

Navigacija
Lista poslednjih: 16, 32, 64, 128 poruka.