RegExpTarkistaja.java |
1 package kanta; 2 3 /** 4 * Tarkistaja joka tarkistaa että jono vastaa regexpiä 5 * Hyväksyy tyhjän jonon. 6 * @author vesal 7 * 8 */ 9 public class RegExpTarkistaja implements Tarkistaja { 10 11 private final String regexp; 12 13 14 /** 15 * Luodaan tarkistaja joka hyväksyy sallitut merkit 16 * @param regexp hyväksyttävät merkit 17 */ 18 public RegExpTarkistaja(String regexp) { 19 this.regexp = regexp; 20 } 21 22 23 /** 24 * Tarkistaa että jono sisältää vain valittuja numeroita 25 * @param jono tutkittava jono 26 * @example 27 * <pre name="test"> 28 * RegExpTarkistaja tar = new RegExpTarkistaja("[1-4]*"); 29 * tar.tarkista("12") === null; 30 * tar.tarkista("15") === "Ei vastaa maskia: [1-4]*"; 31 * tar.tarkista("") === null; 32 * </pre> 33 */ 34 @Override 35 public String tarkista(String jono) { 36 if ( jono.matches(regexp) ) return null; 37 return "Ei vastaa maskia: " + regexp; 38 } 39 40 } 41