---
title: roRegex
slug: develop/es/roregex
docTags: 
createdAt: 2025-03-11T07:07:17.200Z
---

Este objeto permite la implementación del procesamiento de expresiones regulares proporcionado por la biblioteca PCRE. El equivalente en JavaScript es `RegExp()`.

Este objeto se crea con una cadena para representar el patrón de coincidencia y una cadena para indicar indicadores que modifican el comportamiento de una o más operaciones de coincidencia: 

```text
CreateObject("roRegex", "[a-z]+", "i") 
```

La cadena de coincidencia (en el ejemplo anterior, `"[a-z]+"`, que coincide con todas las letras minúsculas) puede incluir la mayoría de las expresiones regulares compatibles con Perl que se encuentran en la [documentación de PCRE](http://pcre.org/). 

Este objeto admite cualquier combinación de los siguientes indicadores de comportamiento (en el ejemplo anterior, "i", que puede modificarse para hacer coincidir tanto letras mayúsculas como minúsculas):

- `"i"`: Modo de coincidencia sin distinción entre mayúsculas y minúsculas.
- `"m"`: Modo multilínea. Las construcciones de inicio de línea ("^") y fin de línea ("$") coinciden inmediatamente antes o después de cualquier nueva línea en la cadena de asunto. También coinciden al principio o final absolutos de una cadena.
- `"s"`: Modo dot-all, que incluye una nueva línea en la expresión regular ".\*". Este modificador es equivalente a "/s" en Perl.
- `"x"`: Modo extendido, que ignora los caracteres de espacio en blanco excepto cuando se escapan o están dentro de una clase de caracteres. Este modificador es equivalente a "/x" en Perl.

## ifRegex

### IsMatch(string As String) As Boolean

Devuelve `Verdadero` si la cadena es coherente con el patrón de coincidencia.

### Match(string As String) As roArray

Devuelve un *roArray* de subcadenas coincidentes de la cadena. La coincidencia completa se devuelve en la forma `array[0]`. Esta será la única entrada en la matriz si no hay subcadenas entre paréntesis. Si el patrón de coincidencia contiene subcadenas entre paréntesis, las subcadenas relevantes se devolverán como una matriz de longitud n+1, donde `array[0]` es la coincidencia completa y cada entrada adicional en la matriz es la coincidencia para la expresión entre paréntesis correspondiente.

### Replace(string As String, subset As String) As String

Reemplaza la primera aparición de un patrón de coincidencia en la cadena con el subconjunto y devuelve el resultado.

El subconjunto puede contener referencias inversas numeradas a subcadenas entre paréntesis.

**Ejemplo**

```text
 > r = CreateObject("roRegex", "(\d+)\s+(\w+)", "")
 > ? r.Replace("123 abc", "word:\2 number:\1")
 > word:abc number:123
```

### ReplaceAll(string As String, subset As String) As String

Reemplaza todas las apariciones de un patrón de coincidencia en la cadena con el subconjunto y devuelve el resultado.

Ejemplo

```text
 > r = CreateObject("roRegex", "a", "i")
 > ? r.ReplaceAll("Abracadabra", "x")
 xbrxcxdxbrx
```

### Split(string As String) As roList

Usa el patrón de coincidencia como delimitador y divide la cadena en los límites del delimitador. La función devuelve una *roList* de cadenas que fueron separadas por el patrón de coincidencia en la cadena original.
