Jump to content
php.lv forumi

regular expression


Grey_Wolf

Recommended Posts

Mazliet nonaacu strupceljaa :(

vajag stringa parbadi kas satur n (piemeeram 4) atljautos simbolus

Jebkuraa seciibaa....

piem:

$a='āaš12'; // true

$a='abcā#'; // true

$a='āšč' // false

 

------

^[a-z0-9A-Z_]

tiktaal viss skaidrs:

 

ja raksta shaadi

^[a-z0-9A-Z*]+

arii 1 atljautais simbols ir valiids

ja + aizvieto {skaits}

tad parbauda vai atljautie simb iet peec kaartas

, vajadzeetu la buutu dotais skaits Jebkuraa seciibaa

 

Kaadas idejas?

 

P.S. izmekleejos gan netaa (nu visu jau nav iespeejams izskatiit) gan sheit (biezaak uzdotajos jautaajumos jau izskatiju)

Link to comment
Share on other sites

Nesaprotu ko tev vajag.

Ja vajag pārbaudīt vai strings sastāv precīzi no 4 noteiktiem simboliem, tad:

if (preg_match('#^[\d\w_]{4}$#i', $text)) { // ir ok } else { // nav ok }

Kur tajās [...] iekavās ieliec atļautos simbolus.

Link to comment
Share on other sites

Nesaprotu ko tev vajag.

23605[/snapback]

Vajag noteikt vai stringaa ir 2 Latinju simboli ( A-Za-z0-9_ ) vai nav - nenjemot veeraa paareejos simbolus - pie tam vinji var buut jebkuraa seciibaa -

piem:

Jāņis - valiids // 3 simboli

Jāņš - nav valiids // 1 simbols

--------

Link to comment
Share on other sites

Tu jau prasīji latīņu simbolus.. Ja tev vajag [a-zA-Z0-9_] tad vajag šitā:

preg_match('#^(.*[\w\d_]){2}.*$#i', $text)

23625[/snapback]

 

bubu, vari izskaidrot ito postu?

 

ko noziimee: '#^(.*[\w\d_]){2}.*$#i' tas visss??

kaut mazliet B)

Link to comment
Share on other sites

#X#Y - # atdala patternu X no modifieriem Y

^ - norāda teksta sākumu

$ - norāda teksta beigas

(X){2} - norāda, ka patternam X obligāti jābūt divas reizes pēc kārtas

.* - nozīmē jebkurus simbolus jebkurā skaitā (arī 0)

[\w\d_] - nozīmē vienu jebkuru simbolu a-z vai 0-9 vai _ (\w=a-z, \d=0-9

modifieris i - nozīmē case insensitivity, tb a atbildīs gan a, gan A.

 

(sintakse jau vispār jāskatās php manuālī, bet nu...)

Link to comment
Share on other sites

×
×
  • Create New...