Haluan käyttää JavaScriptiä (voi olla jQuery) tehdä joitakin asiakkaan puolen validointi tarkistaa, onko merkkijono vastaa regex:
^([a-z0-9]{5,})$
Ihannetapauksessa se olisi lauseke, joka palauttaa true tai false.
Olen JavaScriptin aloittelija, tekeekö match()
sen, mitä tarvitsen? Se näyttää tarkistavan, vastaako osa merkkijonosta regexiä, ei koko merkkijonoa.
Käytä regex.test()
, jos haluat vain boolean-tuloksen:
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
...ja voit poistaa ()
regexpistäsi, koska et tarvitse kaappausta.
Käytä /youregexp/.test(yourString)
, jos haluat vain tietää, täsmääkö merkkijono regexp:n kanssa.
Tässä on esimerkki, joka etsii tiettyjä HTML-tageja, jotta on selvää, että /someregex/.test()
palauttaa boolean-arvon:
if(/(span|h[0-6]|li|a)/i.test("h3")) alert('true');