-//\r
-// This software is now distributed according to\r
-// the Lesser Gnu Public License. Please see\r
-// http://www.gnu.org/copyleft/lesser.txt for\r
-// the details.\r
-// -- Happy Computing!\r
-//\r
-package com.stevesoft.pat;\r
-\r
-/** This is the same as Skip, except it needs a minimum\r
- of two characters in the initializing String.\r
- @see com.stevesoft.pat.Skip\r
- @see com.stevesoft.pat.SkipBMH\r
- */\r
-public class Skip2 extends Skip {\r
- int c1,mask1;\r
- public Skip2(String s,boolean ign,int offset) {\r
- super(s,ign,offset);\r
- c1 = s.charAt(1);\r
- m1 = 2==s.length();\r
- if(ign) {\r
- mask1=mkmask(c1);\r
- } else\r
- mask1 = 0;\r
- }\r
- public int find(StringLike s,int start,int end) {\r
- if(start > end) return -1;\r
- start += offset;\r
- int vend = min(s.length()-2,end+offset);\r
- for(int i=start;i<=vend;i++)\r
- if(0 == (s.charAt(i)&mask) && 0 == (s.charAt(i+1)&mask1)) {\r
- //if(m1||s.regionMatches(ign,i,src,0,src.length()) )\r
- if(m1||CaseMgr.regionMatches(s,ign,i,src,0,src.length()) )\r
- return i-offset;\r
- }\r
- return -1;\r
- }\r
-}\r
+//
+// This software is now distributed according to
+// the Lesser Gnu Public License. Please see
+// http://www.gnu.org/copyleft/lesser.txt for
+// the details.
+// -- Happy Computing!
+//
+package com.stevesoft.pat;
+
+/**
+ * This is the same as Skip, except it needs a minimum of two characters in the
+ * initializing String.
+ *
+ * @see com.stevesoft.pat.Skip
+ * @see com.stevesoft.pat.SkipBMH
+ */
+public class Skip2 extends Skip
+{
+ int c1, mask1;
+
+ public Skip2(String s, boolean ign, int offset)
+ {
+ super(s, ign, offset);
+ c1 = s.charAt(1);
+ m1 = 2 == s.length();
+ if (ign)
+ {
+ mask1 = mkmask(c1);
+ }
+ else
+ {
+ mask1 = 0;
+ }
+ }
+
+ public int find(StringLike s, int start, int end)
+ {
+ if (start > end)
+ {
+ return -1;
+ }
+ start += offset;
+ int vend = min(s.length() - 2, end + offset);
+ for (int i = start; i <= vend; i++)
+ {
+ if (0 == (s.charAt(i) & mask) && 0 == (s.charAt(i + 1) & mask1))
+ {
+ // if(m1||s.regionMatches(ign,i,src,0,src.length()) )
+ if (m1 || CaseMgr.regionMatches(s, ign, i, src, 0, src.length()))
+ {
+ return i - offset;
+ }
+ }
+ }
+ return -1;
+ }
+}