Class StringPattern


  • public class StringPattern
    extends java.lang.Object
    Implementation of a UNIX shell-like string pattern algorithm.

    Additionally, the concept of the "combined pattern" is supported (see matches(StringPattern[], String).

    • Constructor Summary

      Constructors 
      Constructor Description
      StringPattern​(int mode, java.lang.String pattern)  
      StringPattern​(java.lang.String pattern)  
    • Method Summary

      All Methods Static Methods Instance Methods Concrete Methods 
      Modifier and Type Method Description
      int getMode()  
      boolean matches​(java.lang.String text)
      Match the given text against the pattern represented by the current instance, as follows: A * in the pattern matches any sequence of zero or more characters in the text A ? in the pattern matches exactly one character in the text Any other character in the pattern must appear exactly as it is in the text Notice: The mode flag of the current instance does not take any effect here.
      static boolean matches​(StringPattern[] patterns, java.lang.String text)
      Match a given text against an array of StringPatterns (which was typically created by parseCombinedPattern(String).
      static StringPattern[] parseCombinedPattern​(java.lang.String combinedPattern)
      Parse a "combined pattern" into an array of StringPatterns.
      java.lang.String toString()  
      • Methods inherited from class java.lang.Object

        clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
    • Constructor Detail

      • StringPattern

        public StringPattern​(int mode,
                             java.lang.String pattern)
        Parameters:
        mode - INCLUDE or EXCLUDE
      • StringPattern

        public StringPattern​(java.lang.String pattern)
    • Method Detail

      • getMode

        public int getMode()
      • matches

        public boolean matches​(java.lang.String text)
        Match the given text against the pattern represented by the current instance, as follows:
        • A * in the pattern matches any sequence of zero or more characters in the text
        • A ? in the pattern matches exactly one character in the text
        • Any other character in the pattern must appear exactly as it is in the text
        Notice: The mode flag of the current instance does not take any effect here.
      • parseCombinedPattern

        public static StringPattern[] parseCombinedPattern​(java.lang.String combinedPattern)
        Parse a "combined pattern" into an array of StringPatterns. A combined pattern string is structured as follows:
           combined-pattern :=
             [ '+' | '-' ] pattern
             { ( '+' | '-' ) pattern }
         
        If a pattern is preceeded with a '-', then the StringPattern is created with mode EXCLUDE, otherwise with mode INCLUDE.
      • matches

        public static boolean matches​(StringPattern[] patterns,
                                      java.lang.String text)
        Match a given text against an array of StringPatterns (which was typically created by parseCombinedPattern(String).

        The last matching pattern takes effect; if its mode is INCLUDE, then true is returned, if its mode is EXCLUDE, then false is returned.

        If patterns is PATTERNS_NONE, or empty, or none of its patterns matches, then false is returned.

        If patterns is PATTERNS_ALL, then true is returned.

        For backwards compatibility, null patterns are treated like PATTERNS_NONE.

      • toString

        public java.lang.String toString()
        Overrides:
        toString in class java.lang.Object