rita.support
Class Regex

java.lang.Object
  extended by rita.support.Regex

public class Regex
extends java.lang.Object

A utility class for regular expression matching. Defaults to case-sensitive, multi-line matching. RegExps: http://java.sun.com/j2se/1.4.2/docs/api/java/util/regex/Pattern.html Groups beginning with (? are pure, non-capturing groups that do not capture text and do not count towards the group total. ---------------------------- FLAGS ----------------------------- Embedded Compiled Meaning * (?i) Pattern.CASE_INSENSITIVE Enables case-insensitive matching. (?d) Pattern.UNIX_LINES Enables Unix lines mode. (?m) Pattern.MULTILINE Enables multi line mode. (?s) Pattern.DOTALL Enables "." to match line terminators. (?u) Pattern.UNICODE_CASE Enables Unicode-aware case folding. (?x) Pattern.COMMENTS Permits white space and comments in the pattern. --- Pattern.CANON_EQ Enables canonical equivalence. ----------------------------------------------------------------


Method Summary
static Regex getInstance()
           
 java.util.regex.Matcher getMatcher(java.lang.String pattern, java.lang.String testStr)
          Returns a matcher for the given pattern and string
 java.lang.String[] groups(java.lang.String pattern, java.lang.String testStr)
           in = "sdfakjsdhfljksh Fee! Fie! Foe! Fum! sdfakjsdhfljksh Fee! Fie! Foe! Fum!"; pat = "((F[a-z]{2}! ){4})+"; Regex.groups(pat, in) returns ["Fee! Fie! Foe! Fum!", "Fee! Fie! Foe! Fum!"]
 boolean isCaseInsensitive()
           
 boolean isMultiLine()
           
static void main(java.lang.String[] args)
           
 boolean matches(java.lang.String pattern, java.lang.String testStr)
          Regex.matches("a*b", "aaaaaaaaaab") returns true Regex.matches("a*b", "caaaaaaaabc") returns false
 java.lang.String replace(java.lang.String pattern, java.lang.String fullStr, java.lang.String replaceStr)
          Regex.replace(" ", "[aa] [bb]", " ") returns '[aa] [bb]'
 void setCaseInsensitive(boolean caseInsensitive)
           
 void setFlags(int flags)
          Set flags to override boolean vars (caseInsensitive & multiLine) with a custom bitmask
 void setMultiLine(boolean multiLine)
           
 java.lang.String[] split(java.lang.String pattern, java.lang.String testStr)
          Regex.split(" ?search ?", "first Search me, then search your Search History"))); returns ["first", "me, then", "your", "History"]
 boolean test(java.lang.String pattern, java.lang.String input)
          Regex.test(" ", "
 
") returns true Regex.test("search", "clear your existing Search History") returns true if ignore-case is true
 
Methods inherited from class java.lang.Object
equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Method Detail

getInstance

public static Regex getInstance()

getMatcher

public java.util.regex.Matcher getMatcher(java.lang.String pattern,
                                          java.lang.String testStr)
Returns a matcher for the given pattern and string

Parameters:
pattern -
testStr -

split

public java.lang.String[] split(java.lang.String pattern,
                                java.lang.String testStr)
Regex.split(" ?search ?", "first Search me, then search your Search History"))); returns ["first", "me, then", "your", "History"]

Parameters:
pattern -
testStr -

test

public boolean test(java.lang.String pattern,
                    java.lang.String input)
Regex.test(" ", "
 
") returns true Regex.test("search", "clear your existing Search History") returns true if ignore-case is true

Parameters:
pattern -
input -

matches

public boolean matches(java.lang.String pattern,
                       java.lang.String testStr)
Regex.matches("a*b", "aaaaaaaaaab") returns true Regex.matches("a*b", "caaaaaaaabc") returns false

Parameters:
pattern -
testStr -

groups

public java.lang.String[] groups(java.lang.String pattern,
                                 java.lang.String testStr)
     in = "sdfakjsdhfljksh Fee! Fie! Foe! Fum! sdfakjsdhfljksh Fee! Fie! Foe! Fum!";
         pat = "((F[a-z]{2}! ){4})+";
         Regex.groups(pat, in) returns ["Fee! Fie! Foe! Fum!", "Fee! Fie! Foe! Fum!"]
     

Parameters:
pattern -
testStr -

replace

public java.lang.String replace(java.lang.String pattern,
                                java.lang.String fullStr,
                                java.lang.String replaceStr)
Regex.replace(" ", "[aa] [bb]", " ") returns '[aa] [bb]'

Parameters:
pattern -
fullStr -
replaceStr -

setFlags

public void setFlags(int flags)
Set flags to override boolean vars (caseInsensitive & multiLine) with a custom bitmask

Parameters:
flags -

isCaseInsensitive

public boolean isCaseInsensitive()

setCaseInsensitive

public void setCaseInsensitive(boolean caseInsensitive)

isMultiLine

public boolean isMultiLine()

setMultiLine

public void setMultiLine(boolean multiLine)

main

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