code: def _speak_as(
          self,
          element,
          regular_expression,
          data_property_value,
          operation
      ):
          
  
          children = []
          pattern = re.compile(regular_expression)
          content = element.get_text_content()
          while content:
              matches = pattern.search(content)
              if matches is not None:
                  index = matches.start()
                  children = operation(content, index, children)
  
                  new_index = index + 1
                  content = content[new_index:]
              else:
                  break
          if children:
              if content:
                  children.append(self._create_content_element(
                      content,
                      data_property_value
                  ))
              while element.has_children():
                  element.get_first_node_child().remove_node()
              for child in children:
                  element.append_element(child)
docs: Execute a operation by regular expression for element only.
  
          :param element: The element.
          :type element: hatemile.util.html.htmldomelement.HTMLDOMElement
          :param regular_expression: The regular expression.
          :type regular_expression: str
          :param data_property_value: The value of custom attribute used to
                                      identify the fix.
          :type data_property_value: str
          :param operation: The operation to be executed.
          :type operation: function