code: def _tryMatch(self, textToMatchObject):
          
  
          # andreikop: This check is not described in kate docs, and I haven't found it in the code
          if not textToMatchObject.isWordStart:
              return None
  
          index = self._tryMatchText(textToMatchObject.text)
          if index is None:
              return None
  
          if textToMatchObject.currentColumnIndex + index < len(textToMatchObject.wholeLineText):
              newTextToMatchObject = TextToMatchObject(textToMatchObject.currentColumnIndex + index,
                                                        textToMatchObject.wholeLineText,
                                                        self.parentContext.parser.deliminatorSet,
                                                        textToMatchObject.contextData)
              for rule in self.childRules:
                  ruleTryMatchResult = rule.tryMatch(newTextToMatchObject)
                  if ruleTryMatchResult is not None:
                      index += ruleTryMatchResult.length
                      break
                  # child rule context and attribute ignored
  
          return RuleTryMatchResult(self, index)
docs: Try to find themselves in the text.
          Returns (count, matchedRule) or (None, None) if doesn't match