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

match() - problem uvijek mi vraća null

[es] :: Javascript i AJAX :: match() - problem uvijek mi vraća null

[ Pregleda: 1142 | Odgovora: 2 ] > FB > Twit

Postavi temu Odgovori

Autor

Pretraga teme: Traži
Markiranje Štampanje RSS

dalibor.sokolov

Član broj: 305436
Poruke: 4
109.175.79.*



Profil

icon match() - problem uvijek mi vraća null27.07.2012. u 21:16 - pre 142 meseci
Učim trenutno JavaScript i stvara mi problem match(). :) Trebam da napravim funkciju koja će preuzeti od korisnika dva stringa. Vrijednost drugog niza je ono šta treba pronaći u prvom nizu i ispisati rezultat.

Eh sada, koliko sam shvatio, string.match(nesto) trazi nesto u stringu i kao vrijednost vraća polje sa vrijednostima što je pronašao, a null ako nije našao. Da li ovaj paramater unutar zagrada može biti varijabla ili je to isključivo neki tekst?

Evo kako sam napisao, ali uvijek mi poziv ove metode vrati null.

function f2() {
var n1=document.getElementById("niz");
var n2=document.getElementById("trazi");
var orgNiz=n1.value;
var trazim=n2.value;
var fin=orgNiz.match(/trazim/ig);
if(fin==null) {
document.getElementById("zadatak2").innerHTML="Nismo pronašli vrijednost koju ste tražili!";
}
else {
document.getElementById("zadatak2").innerHTML="Pronašli smo: "+fin;
}

}

HTML je:
<!DOCTYPE html>
<html>
<head>
<script type="text/javascript" src="v1.js"></script>
<title>Stringovi</title>
</head>
<body>
<table>
<tr>
<td>Unesite neki tekst:</td>
<td><input type="text" value="Ovdje upišite tekst" id="niz" size="40" /></td>
</tr>
<tr>
<td>Unesti tekst koji treba pronaći:</td>
<td><input type="text" value="Ovdje upišite šta tražite" id="trazi" size="40" /></td>
</tr>
</table>
<input type="button" value="Traži" id="dugme" onclick="f2();" />
<p id="zadatak2"></p>
</body>
</html>
 
Odgovor na temu

pajaja
Beograd

Administrator
Član broj: 41598
Poruke: 3430
*.dynamic.sbb.rs.

Jabber: pajaja@elitesecurity.org
ICQ: 253317269


+144 Profil

icon Re: match() - problem uvijek mi vraća null28.07.2012. u 03:31 - pre 142 meseci
Pozdrav,

ako hoces da koristis dinamicke regularne izraze u javascriptu potreban ti je RegExp objekat. Ovaj kod koji si ti trenutno postavio
Code (javascript):

var trazim=n2.value;
var fin=orgNiz.match(/trazim/ig);
 

nece koristiti vrednost iz promenljive trazim, vec ce u stringu pokusati da pronadje podstring "trazim" obzirom da ne zna da se to odnosi na promenljivu. Ako u niz ukucas neki string koji ima u sebi rec "trazim" videces da ce je pronaci. Pokusaj ovako:

Code (javascript):

var trazim = n2.value;
var regex = new RegExp(trazim, "ig");
var fin = orgNiz.match(regex);
 

xxx
mali mali mali kamičak...nebo plave boje.
In Memoriam: Madzone Zeka(15.09.2005-16.09.2005)
 
Odgovor na temu

dalibor.sokolov

Član broj: 305436
Poruke: 4
92.36.210.*



Profil

icon Re: match() - problem uvijek mi vraća null28.07.2012. u 08:35 - pre 142 meseci
Hvala puno :D
 
Odgovor na temu

[es] :: Javascript i AJAX :: match() - problem uvijek mi vraća null

[ Pregleda: 1142 | Odgovora: 2 ] > FB > Twit

Postavi temu Odgovori

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