Nodo función búsqueda estructurada. Más...
#include <regexpOpNode.h>
Métodos públicos | |
| searchNode (runNode *str, runNode *regexp) | |
| searchNode (runNode *str, runNode *regexp, runNode *keys) | |
| void | run () |
Métodos públicos heredados desde nexpNode | |
| virtual refNode * | ref () |
| virtual void | noderef (runNode *node) |
| virtual runNode * | nodeval () const |
| virtual void | setRef (refNode *node) |
| virtual refNode * | getRef () |
| void | asig (runNode *&node, bool run=true) |
| void | setVal (runNode *node) |
| string | print () const |
Métodos públicos heredados desde expNode | |
| virtual void | setNodeValue (runNode *node) |
Métodos públicos heredados desde objectTypeNode | |
| objectTypeNode () | |
| runNode * | getMethod (runNode *key) |
| refNode * | getMethodRef (runNode *key) |
| virtual runNode * | getClass () |
| virtual void | setClass (runNode *c) |
Métodos públicos heredados desde runNode | |
| runNode (string str) | |
| runNode () | |
| virtual void | addRef () |
| virtual void | rmRef () |
| virtual bool | is_print () const |
| virtual bool | is_runlist () const |
| virtual bool | is_string () const |
| string | getPtrString () |
Métodos públicos estáticos | |
| static runNode * | asMethod () |
Métodos públicos estáticos heredados desde nexpNode | |
| static runNode * | resolved (runNode *&node) |
| static runNode * | resolvedRef (runNode *&node) |
| static runNode * | resolved (runNode *&node, runNode *&ref) |
| static runNode * | resolvedAsFunction (runNode *&node) |
| static runNode * | resolvedAsFunction (runNode *&node, runNode *&ref) |
| static runNode * | resolv (runNode *node) |
Métodos públicos estáticos heredados desde expNode | |
| static runNode * | clone (runNode *node) |
Métodos públicos estáticos heredados desde runNode | |
| static bool | compare (runNode *node1, runNode *node2, int op=0) |
Nodo función búsqueda estructurada.
Este nodo realiza una búsqueda estructurada, es decir, obtiene una estructura de datos condicionada por los patrones de búsqueda y el elemento sobre el que se realiza.
En el caso básico de ejección de este nodo operará buscando en una cadena de texto subcadenas que pertenezcan al conjunto definido por una expresión regular, introduciendo cada subcadena en un array.
Adicionalmente la expresión regular puede estar formada por subexpresiones delimitadas por "()". En dicho caso se buscará en la cadena principal subcadenas que pertenezcan al conjunto delimitado por la expresión regular. Por cada subcadena encontrada se creará un array con las correspondencias de cada subexpresión. Cada uno de los arrays resultantes se guardan en otro que será el que tome como valor interno el nodo.
Si se utiliza una expresión regular formada por subexpresiones los arrays correspondientes a cada subcadena tendrán índices numéricos. Es posible, sin embargo, especificar una lista ordenada de claves para crear un array asociativo.
También es posible ampliar la búsqueda sobre un array de cadenas. En este caso se aplicará el algoritmo de búsqueda recursivamente en cada elemento del array
Constructor inicializa el nodo de búsqueda estructurada a partir de una cadena o array de cadenas y una expresión regular
| str | Cadena de texto o array de cadenas |
| regexp | Expresión regular. |
Constructor que inicializa el nodo de búsqueda estructurada a partir de una cadena o array de cadenas, una expresión regular y una lista de claves que serán utilizado par crear un array asociativo
| str | Cadena de texto o array de cadenas |
| regexp | Expresión regular |
| keys | Lista de claves para el array asociativo |
|
static |
Devuelve un nodo search como cuerpo de un nodo función, siendo un nodo this la cadena.
|
virtual |
Lleva a cabo la búsqueda estructura. Tras la ejecución del nodo este toma como valor interno el array resultado.
Implementa runNode.