» »

search($string,'text'); ???

search($string,'text'); ???

poweroff ::

Kako bi izgledala funkcija v Perlu, ki ti preišče string in ne glede na to ali so velike ali male crke, najde in presteje stevilo zahtevanih nizov.

V stilu search($string,'test');
in bo potem prestela kolikokrat se v nekem stringu pojavlja izraz 'test' (lahko tudi TEST, tEsT, itd...).

darh ::

to bos naleps nared z regular expresni... bi ti pomagu pa ne znam regexp lih najbols

http://www.perl.com/pub/doc/manual/html...
Excuses are useless! Results are priceless!

simon ::

sub search {
my ($string,$iskanec)=@_;
my (@match)= $string =~ m/$iskanec/gi;
return scalar(@match);
}

poweroff ::

Kaj pa potem naredi tale program?

$images = $string =~
m{
< \s* img
\s* ["|']? ( [^\s > '"]+ ) ['|"]?
}xgm;


(tam kjer je rdeče, ni presledkov...)
Kaj naredi ta xgm? in kaj oni ["|']?

simon ::


xgm so opcije jih podas pri m operaterju. Konkretno pomeni:

x: ti omogoci da v regexu lahko prosto po presernu pises presledke in nove vrstice (da rata bolj pregleden), a jih iskanje ne bo upostevalo, ce jih posebej ne zahtevas (s je presledek, n pa je nova vrstica)

g: privzeto je, da se iskanje ustavi pri prvem zadetku, tale g pa pomeni da bo poiskalo prav vse zadetke in jih vrnilo. Taksno iskanje ti vrne array zadetkov, ki jih lahko prestejes, tako da jih priredis skalarju ali pa jih uporabis

m: iskanje se privzeto ustavi ce naleti v stringu ki ga pregleduje na znak za novo vrstico. Ce ves da se lahko iskani niz raztegne v vec vrstic, ga uporabis



rdece s je znak za presledek, | je pa or znak torej "|' dvojni ali enojni oklepaj.

Priporocam ti da vpises v gugla perl regular expression tutorial pa si malo pogledas zadevce. Stvar je grozna na prvi pogled ampak videz vara, poleg tega pa je zelo, zelo uporabna :)

poweroff ::

Aha - torej ti tista programska koda naredi tole:
vrne vse zadetke (ki jih potem prešteješ), iskanje raztegne čez več vrstic.
Hmm, da vidim če razumem:

Išče pa niz sestavljen iz znaka < , večih (ali nič) presledkov ter niza "img", ki mu zopet sledi več ali nič presledkov, nato pa enojni ali dvojni narekovaj ali pa nič enojnega ali dvojnega narekovaja.

Potem pa še oklepaji... tega ne razumem.

Na koncu je lahko enojni ali dvojni narekovaj ali pa nič enojnega ali dvojnega narekovaja.


Vredno ogleda ...

TemaSporočilaOglediZadnje sporočilo
TemaSporočilaOglediZadnje sporočilo
»

[java]parseInt težava

Oddelek: Programiranje
81023 (926) fiction
»

kakovost gesla

Oddelek: Programska oprema
121743 (1467) imagodei
»

[BASH]Kako skripti podati argumente zapisane v datoteki?

Oddelek: Programiranje
71258 (1173) BlaY0
»

DevC++ težava?

Oddelek: Programiranje
181693 (1561) Gundolf
»

C ++ problem, (sm zacetnik :) )

Oddelek: Programiranje
111888 (1676) snow

Več podobnih tem