fi.jyu.mit.ohj2
Class WildChars

java.lang.Object
  extended byfi.jyu.mit.ohj2.WildChars

public class WildChars
extends java.lang.Object

Luokka wildmat-vertailuun, jossa jokereita ovat * ja ?


Constructor Summary
WildChars()
           
 
Method Summary
static boolean containsWildChars(java.lang.String str)
          Palauttaa sisältääkö jono str jokerimekrkkejä * tai ?
static void main(java.lang.String[] args)
           
static boolean onkoSamat(java.lang.String str, java.lang.String mask)
           
static boolean wildmat(java.lang.String str, java.lang.String mask)
           Funktiolla tutkitaan täsmääkö annettu jono verrattavaan maskiin.
static void wildtest(java.lang.String s, java.lang.String maski, boolean result)
           
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

WildChars

public WildChars()
Method Detail

containsWildChars

public static boolean containsWildChars(java.lang.String str)
Palauttaa sisältääkö jono str jokerimekrkkejä * tai ?

Parameters:
str - jono jota tutkitaan
Returns:
sisältääkö jono (true) jokerimerkkejä vai ei (false)

wildmat

public static boolean wildmat(java.lang.String str,
                              java.lang.String mask)
  Funktiolla tutkitaan täsmääkö annettu jono verrattavaan maskiin.
 Maski saa sisältää seuraavia erikoismerkkejä:
   * vastaa 0-n merkkiä
   ? vastaa mitä tahansa yhtä merkkiä

 Algoritmi: Kysymysmerkki ja tavallinen kirjain normaalisti
            Jos tulee vastaan tähti joka ei ole jonon lopussa,
            niin ongelmahan on oikeastaan
            (koska tähän asti kaikki on ollut oikein)
            "Onko loppujono sama kuin toisen jonon loppu JOSTAKIN
             kohdasta alkaen"?
            Siis kokeillaan sovittaa loppujonoa aliohjelman itsensä
            (rekursio) avulla kaikkiin mahdollisiin loppupaikkoihin.
 Esimerkki: str = "Kissa" maski = "*ss*" -> true
                                = "*ss"  -> false
 

Parameters:
str - jono jota tutkitaan
mask - maski johon verrataan
Returns:
onko samat (true) vai ei (false) maskin mielessä.

onkoSamat

public static boolean onkoSamat(java.lang.String str,
                                java.lang.String mask)

wildtest

public static void wildtest(java.lang.String s,
                            java.lang.String maski,
                            boolean result)

main

public static void main(java.lang.String[] args)