code: public int span(CharSequence s, int start, SpanCondition spanCondition) {
          if (spanCondition == SpanCondition.NOT_CONTAINED) {
              return spanNot(s, start, null);
          }
          int spanLimit = spanSet.span(s, start, SpanCondition.CONTAINED);
          if (spanLimit == s.length()) {
              return spanLimit;
          }
          return spanWithStrings(s, start, spanLimit, spanCondition);
      }
docs: Spans a string.
  
  @param s The string to be spanned
  @param start The start index that the span begins
  @param spanCondition The span condition
  @return the limit (exclusive end) of the span