53 EST_String eighth(
"some,words-with[punctuation]left..after,a-vowel!");
    55 EST_String quoted(
"\"some tokens\" which  are \"quoted with \"\"\"");
    57 EST_String bits1[10], bits2[10], bits3[10], bits4[10], bits5[10], bits6[2];
    73 EST_Regex reg11(
"\\([^aeiou]\\)\\(\\]\\|[-[.,!?]\\)+");
   106 int test11 = first.
contains(second,3);
   107 int test12 = first.
contains(second,0);
   108 int test13 = second.
contains(third, 0);
   109 int test14 = sixth.
contains(seventh, 0);
   110 int test15 = seventh.
contains(seventh, 0);
   112 int test0m = zeroth.
matches(reg0);
   113 int test1m = first.
matches(reg4);
   114 int test2m = second.
matches(reg4);
   115 int test3m = first.
matches(reg5);
   126 result8.
gsub(reg11,1);
   129 int num1 = split(first, bits1, 10, reg1);
   130 int num2 = split(first, bits2, 2, reg1);
   131 int num7 = split(first, bits3, 10, space);
   132 int num8 = split(quoted, bits4, 10, space, 
'"');
   133 int num9 = split(quoted, bits5, 10, 
RXwhite, 
'"');
   134 int num10 = split(first, bits6, 2, 
".");
   136 int num3 = first.
freq(
"o");
   137 int num4 = first.
freq(third);
   140 int num5 = sub1.
gsub(
"l", 
"[an ell]");
   141 int num6 = sub2.
gsub(reg1, 
"[some ells]");
   143 cout << 
"First '"<< first << 
"'\n";
   144 cout << 
"Second '"<< second << 
"'\n";
   145 cout << 
"Third '"<< third << 
"'\n";
   147 cout << 
"Result 0 '"<< result0 << 
"'\n";
   149 cout << 
"Result 1 '"<< result1 << 
"'\n";
   150 cout << 
"Result 2 '"<< result2 << 
"'\n";
   151 cout << 
"Result 3 '"<< result3 << 
"'\n";
   152 cout << 
"Result 4 '"<< result4 << 
"'\n";
   153 cout << 
"Result 5 '"<< result5 << 
"'\n";
   154 cout << 
"Result 6b '"<< result6b << 
"'\n";
   156 cout << 
"Result 1a '"<< result1a << 
"'\n";
   157 cout << 
"Result 2a '"<< result2a << 
"'\n";
   158 cout << 
"Result 3a '"<< result3a << 
"'\n";
   159 cout << 
"Result 4a '"<< result4a << 
"'\n";
   160 cout << 
"Result 5a '"<< result5a << 
"'\n";
   161 cout << 
"Result 6a '"<< result6a << 
"'\n";
   163 cout << 
"Result 6 '"<< result6 << 
"'\n";
   164 cout << 
"Result 7 '"<< result7 << 
"'\n";
   165 cout << 
"Result 8 '"<< result8 << 
"'\n";
   167 cout << 
"Test 0 '"<< test0 << 
"'\n";
   168 cout << 
"Test 1 '"<< test1 << 
"'\n";
   169 cout << 
"Test 2 '"<< test2 << 
"'\n";
   170 cout << 
"Test 3 '"<< test3 << 
"'\n";
   171 cout << 
"Test 4 '"<< test4 << 
"'\n";
   172 cout << 
"Test 5 '"<< test5 << 
"'\n";
   173 cout << 
"Test 6 '"<< test6 << 
"'\n";
   174 cout << 
"Test 7 '"<< test7 << 
"'\n";
   175 cout << 
"Test 8 '"<< test8 << 
"'\n";
   176 cout << 
"Test 9 '"<< test9 << 
"'\n";
   177 cout << 
"Test 10 '"<< test10 << 
"'\n";
   178 cout << 
"Test 11 '"<< test11 << 
"'\n";
   179 cout << 
"Test 12 '"<< test12 << 
"'\n";
   180 cout << 
"Test 13 '"<< test13 << 
"'\n";
   181 cout << 
"Test 14 '"<< test14 << 
"'\n";
   182 cout << 
"Test 15 '"<< test15 << 
"'\n";
   184 cout << 
"Test 0m '"<< test0m << 
"'\n";
   185 cout << 
"Test 1m '"<< test1m << 
"'\n";
   186 cout << 
"Test 2m '"<< test2m << 
"'\n";
   187 cout << 
"Test 3m '"<< test3m << 
"'\n";
   189 cout << 
"Result 1r '"<< result1r << 
"'\n";
   190 cout << 
"Result 2r '"<< result2r << 
"'\n";
   191 cout << 
"Result 3r '"<< result3r << 
"'\n";
   193 cout << 
"Result 1at '"<< result1at << 
"'\n";
   194 cout << 
"Result 2at '"<< result2at << 
"'\n";
   195 cout << 
"Result 3at '"<< result3at << 
"'\n";
   197 cout << 
"Num 1 '"<< num1 << 
"'\n";
   198 cout << 
"bits1[0] '"<<bits1[0] << 
"'\n";
   199 cout << 
"bits1[1] '"<<bits1[1] << 
"'\n";
   200 cout << 
"bits1[2] '"<<bits1[2] << 
"'\n";
   202 cout << 
"Num 2 '"<< num2 << 
"'\n";
   203 cout << 
"bits2[0] '"<<bits2[0] << 
"'\n";
   204 cout << 
"bits2[1] '"<<bits2[1] << 
"'\n";
   205 cout << 
"bits2[2] '"<<bits2[2] << 
"'\n";
   207 cout << 
"Num 7 '"<< num7 << 
"'\n";
   208 cout << 
"bits3[0] '"<<bits3[0] << 
"'\n";
   209 cout << 
"bits3[1] '"<<bits3[1] << 
"'\n";
   210 cout << 
"bits3[2] '"<<bits3[2] << 
"'\n";
   212 cout << 
"Num 8 '"<< num8 << 
"'\n";
   213 cout << 
"bits4[0] '"<<bits4[0] << 
"'\n";
   214 cout << 
"bits4[1] '"<<bits4[1] << 
"'\n";
   215 cout << 
"bits4[2] '"<<bits4[2] << 
"'\n";
   216 cout << 
"bits4[3] '"<<bits4[3] << 
"'\n";
   217 cout << 
"bits4[4] '"<<bits4[4] << 
"'\n";
   218 cout << 
"bits4[5] '"<<bits4[5] << 
"'\n";
   220 cout << 
"Num 9 '"<< num9 << 
"'\n";
   221 cout << 
"bits5[0] '"<<bits5[0] << 
"'\n";
   222 cout << 
"bits5[1] '"<<bits5[1] << 
"'\n";
   223 cout << 
"bits5[2] '"<<bits5[2] << 
"'\n";
   224 cout << 
"bits5[3] '"<<bits5[3] << 
"'\n";
   225 cout << 
"bits5[4] '"<<bits5[4] << 
"'\n";
   227 cout << 
"Num 10 '"<< num10 << 
"'\n";
   228 cout << 
"bits6[0] '"<<bits6[0] << 
"'\n";
   229 cout << 
"bits6[1] '"<<bits6[1] << 
"'\n";
   231 cout << 
"Num 3 '"<< num3 << 
"'\n";
   232 cout << 
"Num 4 '"<< num4 << 
"'\n";
   234 cout << 
"Num 5 '"<< num5 << 
"'\n";
   235 cout << 
"Sub 1 '"<< sub1 << 
"'\n";
   237 cout << 
"Num 6 '"<< num6 << 
"'\n";
   238 cout << 
"Sub 1 '"<< sub2 << 
"'\n";
 int contains(const char *s, ssize_t pos=-1) const 
Does it contain this substring? 
 
size_t freq(const char *s) const 
Number of occurrences of substring. 
 
A Regular expression class to go with the CSTR EST_String class. 
 
int gsub(const char *os, const EST_String &s)
Substitute one string for another. 
 
EST_Regex RXwhite("[ \n\t\r]+")
White space. 
 
int matches(const char *e, ssize_t pos=0) const 
Exactly match this string? 
 
EST_String after(int pos, int len=1) const 
Part after pos+len. 
 
EST_String before(int pos, int len=0) const 
Part before position. 
 
EST_String at(int from, int len=0) const 
Return part at position.