S programom JavaScript (lahko tudi s programom jQuery) želim opraviti preverjanje na strani odjemalca, da preverim, ali se niz ujema z regexom:
^([a-z0-9]{5,})$
Najbolje bi bilo, če bi bil to izraz, ki bi vrnil true ali false.
Sem novinec v JavaScriptu, ali match()
naredi, kar potrebujem? Zdi se, da preverja, ali se del niza ujema z regexom, in ne celoten niz.
Uporabite `regex.test()
, če želite le logični rezultat:
-- begin snippet: js hide: false console: true babel: false -->
console.log(/^([a-z0-9]{5,})$/.test('abc1')); // false
console.log(/^([a-z0-9]{5,})$/.test('abc12')); // true
console.log(/^([a-z0-9]{5,})$/.test('abc123')); // true
...in lahko odstranite ()
iz svojega regexpa, saj nimate potrebe po zajemu.
Uporabite /youregexp/.test(yourString)
, če želite vedeti le, ali se vaš niz ujema z regexpom.
Tukaj je primer, ki išče določene oznake HTML, tako da je jasno, da /someregex/.test()
vrne logično vrednost:
if(/(span|h[0-6]|li|a)/i.test("h3")) alert('true');