Lenguaje de expresiones regulares - Referencia rápidaRegular Expression Language - Quick Reference

Una expresión regular es un modelo con el que el motor de expresiones regulares intenta buscar una coincidencia en el texto de entrada.A regular expression is a pattern that the regular expression engine attempts to match in input text. Un modelo consta de uno o más literales de carácter, operadores o estructuras.A pattern consists of one or more character literals, operators, or constructs. Para obtener una breve introducción, consulte Expresiones regulares de .NET.For a brief introduction, see .NET Regular Expressions.

Cada sección de esta referencia rápida enumera una categoría determinada de caracteres, operadores y construcciones que puede usar para definir expresiones regulares.Each section in this quick reference lists a particular category of characters, operators, and constructs that you can use to define regular expressions.

Esta información también se proporciona en dos formatos que se puede descargar e imprimir para facilitar su consulta:We’ve also provided this information in two formats that you can download and print for easy reference:

Descargar en formato Word (.docx)Download in Word (.docx) format
Descarga en formato PDF (.pdf)Download in PDF (.pdf) format

Escapes de carácterCharacter Escapes

El carácter de barra diagonal inversa (\) en una expresión regular indica que el carácter que le sigue es un carácter especial (como se muestra en la tabla siguiente) o que se debe interpretar literalmente.The backslash character (\) in a regular expression indicates that the character that follows it either is a special character (as shown in the following table), or should be interpreted literally. Para más información, consulte Escapes de carácter.For more information, see Character Escapes.

Carácter de escapeEscaped character DescripciónDescription ModeloPattern CoincidenciasMatches
\a Coincide con un carácter de campana, \u0007.Matches a bell character, \u0007. \a "\u0007" en "Error!" + '\u0007'"\u0007" in "Error!" + '\u0007'
\b En una clase de caracteres, coincide con un retroceso, \u0008.In a character class, matches a backspace, \u0008. [\b]{3,} "\b\b\b\b" en "\b\b\b\b""\b\b\b\b" in "\b\b\b\b"
\t Coincide con una tabulación, \u0009.Matches a tab, \u0009. (\w+)\t "item1\t", "item2\t" en "item1\titem2\t""item1\t", "item2\t" in "item1\titem2\t"
\r Coincide con un retorno de carro, \u000D.Matches a carriage return, \u000D. (\r no es equivalente al carácter de nueva línea, \n).(\r is not equivalent to the newline character, \n.) \r\n(\w+) "\r\nThese" en "\r\nThese are\ntwo lines.""\r\nThese" in "\r\nThese are\ntwo lines."
\v Coincide con una tabulación vertical, \u000B.Matches a vertical tab, \u000B. [\v]{2,} "\v\v\v" en "\v\v\v""\v\v\v" in "\v\v\v"
\f Coincide con un avance de página, \u000C.Matches a form feed, \u000C. [\f]{2,} "\f\f\f" en "\f\f\f""\f\f\f" in "\f\f\f"
\n Coincide con una nueva línea, \u000A.Matches a new line, \u000A. \r\n(\w+) "\r\nThese" en "\r\nThese are\ntwo lines.""\r\nThese" in "\r\nThese are\ntwo lines."
\e Coincide con un escape, \u001B.Matches an escape, \u001B. \e "\x001B" en "\x001B""\x001B" in "\x001B"
\ nnn\ nnn Usa la representación octal para especificar un carácter (nnn consta de dos o tres dígitos).Uses octal representation to specify a character (nnn consists of two or three digits). \w\040\w "a b", "c d" en "a bc d""a b", "c d" in "a bc d"
\x nn\x nn Usa la representación hexadecimal para especificar un carácter (nn consta de exactamente dos dígitos).Uses hexadecimal representation to specify a character (nn consists of exactly two digits). \w\x20\w "a b", "c d" en "a bc d""a b", "c d" in "a bc d"
\c X\c X

\c x\c x
Coincide con el carácter de control ASCII especificado por X o x, donde X o x es la letra del carácter de control.Matches the ASCII control character that is specified by X or x, where X or x is the letter of the control character. \cC "\x0003" en "\x0003" (Ctrl-C)"\x0003" in "\x0003" (Ctrl-C)
\u nnnn\u nnnn Coincide con un carácter Unicode usando la representación hexadecimal (exactamente cuatro dígitos, según representa nnnn).Matches a Unicode character by using hexadecimal representation (exactly four digits, as represented by nnnn). \w\u0020\w "a b", "c d" en "a bc d""a b", "c d" in "a bc d"
\ Cuando va seguido de un carácter que no se reconoce como un carácter de escape en esta y otras tablas de este tema, coincide con ese carácter.When followed by a character that is not recognized as an escaped character in this and other tables in this topic, matches that character. Por ejemplo, \* es igual que \x2Ay \. es igual que \x2E.For example, \* is the same as \x2A, and \. is the same as \x2E. Esto permite que el motor de expresiones regulares elimine la ambigüedad de los elementos del lenguaje (como * o ?) y los literales de carácter (representados por \* o \?).This allows the regular expression engine to disambiguate language elements (such as * or ?) and character literals (represented by \* or \?). \d+[\+-x\*]\d+ "2+2" y "3*9" en "(2+2) * 3*9""2+2" and "3*9" in "(2+2) * 3*9"

Volver al principioBack to top

Clases de caracteresCharacter Classes

Una clase de caracteres coincide con cualquiera de un juego de caracteres.A character class matches any one of a set of characters. Las clases de caracteres incluyen los elementos del lenguaje enumerados en la tabla siguiente.Character classes include the language elements listed in the following table. Para más información, consulte Clases de caracteres.For more information, see Character Classes.

Clase de carácterCharacter class DescripciónDescription ModeloPattern CoincidenciasMatches
[ grupo_caracteres ][ character_group ] Coincide con cualquier carácter individual de grupo_caracteres.Matches any single character in character_group. De forma predeterminada, la coincidencia distingue entre mayúsculas y minúsculas.By default, the match is case-sensitive. [ae] "a" en "gray""a" in "gray"

"a", "e" en "lane""a", "e" in "lane"
[^ grupo_caracteres ][^ character_group ] Negativo: coincide con cualquier carácter individual que no esté en grupo_caracteres.Negation: Matches any single character that is not in character_group. De forma predeterminada, los caracteres de grupo_caracteres distinguen entre mayúsculas y minúsculas.By default, characters in character_group are case-sensitive. [^aei] "r", "g", "n" en "reign""r", "g", "n" in "reign"
[ primero - último ][ first - last ] Rango de caracteres: coincide con cualquier carácter individual en el intervalo de primero a último.Character range: Matches any single character in the range from first to last. [A-Z] "A", "B" en "AB123""A", "B" in "AB123"
. Carácter comodín: coincide con cualquier carácter excepto con \n.Wildcard: Matches any single character except \n.

Para coincidir con un carácter de punto literal (.To match a literal period character (. o \u002E), debe anteponerle el carácter de escape (\.).or \u002E), you must precede it with the escape character (\.).
a.e "ave" en "nave""ave" in "nave"

"ate" en "water""ate" in "water"
\p{ nombre }\p{ name } Coincide con cualquier carácter individual que pertenezca a la categoría general Unicode o al bloque con nombre especificado por nombre.Matches any single character in the Unicode general category or named block specified by name. \p{Lu}

\p{IsCyrillic}
"C", "L" en "City Lights""C", "L" in "City Lights"

"Д", "Ж" en "ДЖem""Д", "Ж" in "ДЖem"
\P{ nombre }\P{ name } Coincide con cualquier carácter individual que no pertenezca a la categoría general Unicode o al bloque con nombre especificado por nombre.Matches any single character that is not in the Unicode general category or named block specified by name. \P{Lu}

\P{IsCyrillic}
"i", "t", "y" en "City""i", "t", "y" in "City"

"e", "m" en "ДЖem""e", "m" in "ДЖem"
\w Coincide con cualquier carácter de una palabra.Matches any word character. \w "I", "D", "A", "1", "3" en "ID A1.3""I", "D", "A", "1", "3" in "ID A1.3"
\W Coincide con cualquier carácter que no pertenezca a una palabra.Matches any non-word character. \W " ", "." en "ID A1.3"" ", "." in "ID A1.3"
\s Coincide con cualquier carácter que sea un espacio en blanco.Matches any white-space character. \w\s "D " en "ID A1.3""D " in "ID A1.3"
\S Coincide con cualquier carácter que no sea un espacio en blanco.Matches any non-white-space character. \s\S " _" en "int __ctr"" _" in "int __ctr"
\d Coincide con cualquier dígito decimal.Matches any decimal digit. \d "4" en "4 = IV""4" in "4 = IV"
\D Coincide con cualquier carácter que no sea un dígito decimal.Matches any character other than a decimal digit. \D " ", "=", " ", "I", "V" en "4 = IV"" ", "=", " ", "I", "V" in "4 = IV"

Volver al principioBack to top

DelimitadoresAnchors

Los delimitadores, o aserciones atómicas de ancho cero, hacen que una coincidencia tenga éxito o no dependiendo de la posición actual en la cadena, pero no hacen que el motor avance por la cadena ni consuma caracteres.Anchors, or atomic zero-width assertions, cause a match to succeed or fail depending on the current position in the string, but they do not cause the engine to advance through the string or consume characters. Los metacaracteres enumerados en la tabla siguiente son delimitadores.The metacharacters listed in the following table are anchors. Para obtener más información, consulte Delimitadores.For more information, see Anchors.

AserciónAssertion DescripciónDescription ModeloPattern CoincidenciasMatches
^ De forma predeterminada, la coincidencia debe comenzar al principio de la cadena; en el modo multilínea, debe comenzar al principio de la línea.By default, the match must start at the beginning of the string; in multiline mode, it must start at the beginning of the line. ^\d{3} "901" en "901-333-""901" in "901-333-"
$ De forma predeterminada, la coincidencia se debe producir al final de la cadena o antes de \n al final de la cadena; en el modo multilínea, se debe producir antes del final de la línea o antes de \n al final de la línea.By default, the match must occur at the end of the string or before \n at the end of the string; in multiline mode, it must occur before the end of the line or before \n at the end of the line. -\d{3}$ "-333" en "-901-333""-333" in "-901-333"
\A La coincidencia se debe producir al principio de la cadena.The match must occur at the start of the string. \A\d{3} "901" en "901-333-""901" in "901-333-"
\Z La coincidencia se debe producir al final de la cadena o antes de \n al final de la cadena.The match must occur at the end of the string or before \n at the end of the string. -\d{3}\Z "-333" en "-901-333""-333" in "-901-333"
\z La coincidencia se debe producir al final de la cadena.The match must occur at the end of the string. -\d{3}\z "-333" en "-901-333""-333" in "-901-333"
\G La coincidencia se debe producir en el punto en el que finalizó la coincidencia anterior.The match must occur at the point where the previous match ended. \G\(\d\) "(1)", "(3)", "(5)" en "(1)(3)(5)[7](9)""(1)", "(3)", "(5)" in "(1)(3)(5)[7](9)"
\b La coincidencia se debe producir en un límite entre un carácter \w (alfanumérico) y un carácter \W (no alfanumérico).The match must occur on a boundary between a \w (alphanumeric) and a \W (nonalphanumeric) character. \b\w+\s\w+\b "them theme", "them them" en "them theme them them""them theme", "them them" in "them theme them them"
\B La coincidencia no se debe producir en un límite \b.The match must not occur on a \b boundary. \Bend\w*\b "ends", "ender" en "end sends endure lender""ends", "ender" in "end sends endure lender"

Volver al principioBack to top

Construcciones de agrupamientoGrouping Constructs

Las construcciones de agrupamiento definen subexpresiones de una expresión regular y, normalmente, capturan subcadenas de una cadena de entrada.Grouping constructs delineate subexpressions of a regular expression and typically capture substrings of an input string. Las construcciones de agrupamiento incluyen los elementos del lenguaje enumerados en la tabla siguiente.Grouping constructs include the language elements listed in the following table. Para obtener más información, consulte Construcciones de agrupamiento.For more information, see Grouping Constructs.

Construcción de agrupamientoGrouping construct DescripciónDescription ModeloPattern CoincidenciasMatches
( subexpresión )( subexpression ) Captura la subexpresión coincidente y le asigna un número ordinal basado en uno.Captures the matched subexpression and assigns it a one-based ordinal number. (\w)\1 "ee" en "deep""ee" in "deep"
(?< nombre > subexpresión )(?< name > subexpression ) Captura la subexpresión coincidente en un grupo con nombre.Captures the matched subexpression into a named group. (?<double>\w)\k<double> "ee" en "deep""ee" in "deep"
(?< nombre1 - nombre2 > subexpresión )(?< name1 - name2 > subexpression ) Define una definición de grupo de equilibrio.Defines a balancing group definition. Para obtener más información, consulte la sección "Definiciones de grupos de equilibrio" en Construcciones de agrupamiento.For more information, see the "Balancing Group Definition" section in Grouping Constructs. (((?'Open'\()[^\(\)]*)+((?'Close-Open'\))[^\(\)]*)+)*(?(Open)(?!))$ "((1-3)*(3-1))" en "3+2^((1-3)*(3-1))""((1-3)*(3-1))" in "3+2^((1-3)*(3-1))"
(?: subexpresión )(?: subexpression ) Define un grupo sin captura.Defines a noncapturing group. Write(?:Line)? "WriteLine" en "Console.WriteLine()""WriteLine" in "Console.WriteLine()"

"Write" en "Console.Write(value)""Write" in "Console.Write(value)"
(?imnsx-imnsx: subexpresión )(?imnsx-imnsx: subexpression ) Aplica o deshabilita las opciones especificadas dentro de subexpresión.Applies or disables the specified options within subexpression. Para obtener más información, consulte Opciones de expresiones regulares.For more information, see Regular Expression Options. A\d{2}(?i:\w+)\b "A12xl", "A12XL" en "A12xl A12XL a12xl""A12xl", "A12XL" in "A12xl A12XL a12xl"
(?= subexpresión )(?= subexpression ) Aserción de búsqueda anticipada positiva de ancho cero.Zero-width positive lookahead assertion. \w+(?=\.) "is", "ran" y "out" en "He is. The dog ran. The sun is out.""is", "ran", and "out" in "He is. The dog ran. The sun is out."
(?! subexpresión )(?! subexpression ) Aserción de búsqueda anticipada negativa de ancho cero.Zero-width negative lookahead assertion. \b(?!un)\w+\b "sure", "used" en "unsure sure unity used""sure", "used" in "unsure sure unity used"
(?<= subexpresión )(?<= subexpression ) Aserción de búsqueda tardía positiva de ancho cero.Zero-width positive lookbehind assertion. (?<=19)\d{2}\b "99", "50", "05" en "1851 1999 1950 1905 2003""99", "50", "05" in "1851 1999 1950 1905 2003"
(?<! subexpresión )(?<! subexpression ) Aserción de búsqueda tardía negativa de ancho cero.Zero-width negative lookbehind assertion. (?<!19)\d{2}\b "51", "03" en "1851 1999 1950 1905 2003""51", "03" in "1851 1999 1950 1905 2003"
(?> subexpresión )(?> subexpression ) Subexpresión sin retroceso (o "expansiva").Nonbacktracking (or "greedy") subexpression. [13579](?>A+B+) "1ABB", "3ABB" y "5AB" en "1ABB 3ABBC 5AB 5AC""1ABB", "3ABB", and "5AB" in "1ABB 3ABBC 5AB 5AC"

Volver al principioBack to top

CuantificadoresQuantifiers

Un cuantificador especifica cuántas instancias del elemento anterior (que puede ser un carácter, un grupo o una clase de caracteres) debe haber en la cadena de entrada para que se encuentre una coincidencia.A quantifier specifies how many instances of the previous element (which can be a character, a group, or a character class) must be present in the input string for a match to occur. Los cuantificadores incluyen los elementos del lenguaje enumerados en la tabla siguiente.Quantifiers include the language elements listed in the following table. Para obtener más información, consulte Cuantificadores.For more information, see Quantifiers.

CuantificadorQuantifier DescripciónDescription ModeloPattern CoincidenciasMatches
* Coincide con el elemento anterior cero o más veces.Matches the previous element zero or more times. \d*\.\d ".0", "19.9", "219.9"".0", "19.9", "219.9"
+ Coincide con el elemento anterior una o más veces.Matches the previous element one or more times. "be+" "bee" en "been", "be" en "bent""bee" in "been", "be" in "bent"
? Coincide con el elemento anterior cero veces o una vez.Matches the previous element zero or one time. "rai?n" "ran", "rain""ran", "rain"
{ n }{ n } Coincide con el elemento anterior exactamente n veces.Matches the previous element exactly n times. ",\d{3}" ",043" en "1,043.6", ",876", ",543" y ",210" en "9,876,543,210"",043" in "1,043.6", ",876", ",543", and ",210" in "9,876,543,210"
{ n ,}{ n ,} Coincide con el elemento anterior al menos n veces.Matches the previous element at least n times. "\d{2,}" "166", "29", "1930""166", "29", "1930"
{ n , m }{ n , m } Coincide con el elemento anterior al menos n veces, pero no más de m veces.Matches the previous element at least n times, but no more than m times. "\d{3,5}" "166", "17668""166", "17668"

"19302" en "193024""19302" in "193024"
*? Coincide con el elemento anterior cero o más veces, pero el menor número de veces que sea posible.Matches the previous element zero or more times, but as few times as possible. \d*?\.\d ".0", "19.9", "219.9"".0", "19.9", "219.9"
+? Coincide con el elemento anterior una o más veces, pero el menor número de veces que sea posible.Matches the previous element one or more times, but as few times as possible. "be+?" "be" en "been", "be" en "bent""be" in "been", "be" in "bent"
?? Coincide con el elemento anterior cero o una vez, pero el menor número de veces que sea posible.Matches the previous element zero or one time, but as few times as possible. "rai??n" "ran", "rain""ran", "rain"
{ n }?{ n }? Coincide con el elemento precedente exactamente n veces.Matches the preceding element exactly n times. ",\d{3}?" ",043" en "1,043.6", ",876", ",543" y ",210" en "9,876,543,210"",043" in "1,043.6", ",876", ",543", and ",210" in "9,876,543,210"
{ n ,}?{ n ,}? Coincide con el elemento anterior al menos n veces, pero el menor número de veces posible.Matches the previous element at least n times, but as few times as possible. "\d{2,}?" "166", "29", "1930""166", "29", "1930"
{ n , m }?{ n , m }? Coincide con el elemento anterior entre n y m veces, pero el menor número de veces posible.Matches the previous element between n and m times, but as few times as possible. "\d{3,5}?" "166", "17668""166", "17668"

"193", "024" en "193024""193", "024" in "193024"

Volver al principioBack to top

Construcciones de referencia inversaBackreference Constructs

Una referencia inversa permite identificar una subexpresión coincidente previamente más adelante en la misma expresión regular.A backreference allows a previously matched subexpression to be identified subsequently in the same regular expression. En la tabla siguiente se enumeran las construcciones de referencia inversa admitidas en las expresiones regulares de .NET.The following table lists the backreference constructs supported by regular expressions in .NET. Para obtener más información, consulte Construcciones de referencia inversa.For more information, see Backreference Constructs.

Construcción de referencias inversasBackreference construct DescripciónDescription ModeloPattern CoincidenciasMatches
\ número\ number Referencia inversaBackreference. Coincide con el valor de una subexpresión numerada.Matches the value of a numbered subexpression. (\w)\1 "ee" en "seek""ee" in "seek"
\k< nombre >\k< name > Referencia inversa con nombreNamed backreference. Coincide con el valor de una expresión con nombre.Matches the value of a named expression. (?<char>\w)\k<char> "ee" en "seek""ee" in "seek"

Volver al principioBack to top

Construcciones de alternanciaAlternation Constructs

Las estructuras de alternancia modifican una expresión regular para habilitar o no la coincidencia.Alternation constructs modify a regular expression to enable either/or matching. Estas construcciones incluyen los elementos del lenguaje enumerados en la tabla siguiente.These constructs include the language elements listed in the following table. Para obtener más información, consulte Construcciones de alternancia.For more information, see Alternation Constructs.

Construcciones de alternanciaAlternation construct DescripciónDescription ModeloPattern CoincidenciasMatches
| Coincide con cualquier elemento separado por el carácter de barra vertical (|).Matches any one element separated by the vertical bar (|) character. th(e|is|at) "the", "this" en "this is the day.""the", "this" in "this is the day."
(?( expresión ) | no )(?( expression ) yes | no ) Coincide con si el patrón de expresión regular designado por expresión coincide; de lo contrario, coincide con la parte opcional no.Matches yes if the regular expression pattern designated by expression matches; otherwise, matches the optional no part. expresión se interpreta como una aserción de ancho cero.expression is interpreted as a zero-width assertion. (?(A)A\d{2}\b|\b\d{3}\b) "A10", "910" en "A10 C103 910""A10", "910" in "A10 C103 910"
(?( nombre ) | no )(?( name ) yes | no ) Coincide con si nombre, un grupo de captura con nombre o numerado, tiene una coincidencia; de lo contrario, coincide con la parte opcional no.Matches yes if name, a named or numbered capturing group, has a match; otherwise, matches the optional no. (?<quoted>")?(?(quoted).+?"|\S+\s) "Dogs.jpg ", "\"Yiska playing.jpg\"" en "Dogs.jpg \"Yiska playing.jpg\"""Dogs.jpg ", "\"Yiska playing.jpg\"" in "Dogs.jpg \"Yiska playing.jpg\""

Volver al principioBack to top

SustitucionesSubstitutions

Las sustituciones son elementos del lenguaje de expresiones regulares que se admiten en modelos de reemplazo.Substitutions are regular expression language elements that are supported in replacement patterns. Para obtener más información, consulte Substituciones.For more information, see Substitutions. Los metacaracteres enumerados en la tabla siguiente son aserciones atómicas de ancho cero.The metacharacters listed in the following table are atomic zero-width assertions.

CarácterCharacter DescripciónDescription ModeloPattern Modelo de reemplazoReplacement pattern Cadena de entradaInput string Cadena de resultadoResult string
$ número$ number Sustituye la subcadena que coincide con el grupo número.Substitutes the substring matched by group number. \b(\w+)(\s)(\w+)\b $3$2$1 "one two" "two one"
${ nombre }${ name } Sustituye la subcadena que coincide con el grupo con nombre nombre.Substitutes the substring matched by the named group name. \b(?<word1>\w+)(\s)(?<word2>\w+)\b ${word2} ${word1} "one two" "two one"
$$ Sustituye un "$" literal.Substitutes a literal "$". \b(\d+)\s?USD $$$1 "103 USD" "$103"
$& Sustituye una copia de toda la coincidencia.Substitutes a copy of the whole match. \$?\d*\.?\d+ **$&** "$1.30" "**$1.30**"
$` Sustituye todo el texto de la cadena de entrada delante de la coincidencia.Substitutes all the text of the input string before the match. B+ $` "AABBCC" "AAAACC"
$' Sustituye todo el texto de la cadena de entrada detrás de la coincidencia.Substitutes all the text of the input string after the match. B+ $' "AABBCC" "AACCCC"
$+ Sustituye el último grupo capturado.Substitutes the last group that was captured. B+(C+) $+ "AABBCCDD" "AACCDD"
$_ Sustituye toda la cadena de entrada.Substitutes the entire input string. B+ $_ "AABBCC" "AAAABBCCCC"

Volver al principioBack to top

Opciones de expresiones regularesRegular Expression Options

Puede especificar opciones que controlen cómo debe interpretar el motor de expresiones regulares un patrón de expresión regular.You can specify options that control how the regular expression engine interprets a regular expression pattern. Muchas de estas opciones pueden especificarse alineadas (en el patrón de expresión regular) o como una o más constantes de RegexOptions.Many of these options can be specified either inline (in the regular expression pattern) or as one or more RegexOptions constants. Esta referencia rápida solo muestra las opciones alineadas.This quick reference lists only inline options. Para obtener más información sobre las opciones alineadas y RegexOptions, consulte el artículo Opciones de expresiones regulares.For more information about inline and RegexOptions options, see the article Regular Expression Options.

Puede especificar una opción alineada de dos formas:You can specify an inline option in two ways:

  • Con la construcción miscelánea (?imnsx-imnsx), donde el signo menos (-) delante de una opción o un conjunto de opciones desactiva dichas opciones.By using the miscellaneous construct (?imnsx-imnsx), where a minus sign (-) before an option or set of options turns those options off. Por ejemplo, (?i-mn) activa una coincidencia sin distinción entre mayúsculas y minúsculas (i), desactiva el modo multilínea (m) y desactiva las capturas de grupo sin nombre (n).For example, (?i-mn) turns case-insensitive matching (i) on, turns multiline mode (m) off, and turns unnamed group captures (n) off. La opción se aplica al patrón de expresión regular a partir del punto en el que esta se define y es efectiva hasta el final del patrón o hasta el punto en el que otro constructor invierte la opción.The option applies to the regular expression pattern from the point at which the option is defined, and is effective either to the end of the pattern or to the point where another construct reverses the option.

  • Con la Construcciones de agrupamiento(?imnsx-imnsx:subexpresión), que define opciones solo para el grupo especificado.By using the grouping construct(?imnsx-imnsx:subexpression), which defines options for the specified group only.

El motor de expresiones regulares de .NET admite las siguientes opciones insertadas.The .NET regular expression engine supports the following inline options.

OpciónOption DescripciónDescription ModeloPattern CoincidenciasMatches
i Usa la coincidencia sin distinción entre mayúsculas y minúsculas.Use case-insensitive matching. \b(?i)a(?-i)a\w+\b "aardvark", "aaaAuto" en "aardvark AAAuto aaaAuto Adam breakfast""aardvark", "aaaAuto" in "aardvark AAAuto aaaAuto Adam breakfast"
m Usa el modo multilínea.Use multiline mode. ^ y $ coinciden con el principio y el final de una línea, en lugar del principio y el final de una cadena.^ and $ match the beginning and end of a line, instead of the beginning and end of a string. Para obtener un ejemplo, consulte la sección "Modo multilínea" en Opciones de expresiones regulares.For an example, see the "Multiline Mode" section in Regular Expression Options.
n No se capturan grupos sin nombre.Do not capture unnamed groups. Para obtener un ejemplo, consulte la sección "Solo capturas explícitas" en Opciones de expresiones regulares.For an example, see the "Explicit Captures Only" section in Regular Expression Options.
s Usa el modo de una sola línea.Use single-line mode. Para obtener un ejemplo, consulte la sección "Modo de una sola línea" en Opciones de expresiones regulares.For an example, see the "Single-line Mode" section in Regular Expression Options.
x Se omite el espacio en blanco sin escape en el patrón de expresión regular.Ignore unescaped white space in the regular expression pattern. \b(?x) \d+ \s \w+ "1 aardvark", "2 cats" en "1 aardvark 2 cats IV centurions""1 aardvark", "2 cats" in "1 aardvark 2 cats IV centurions"

Volver al principioBack to top

Construcciones misceláneasMiscellaneous Constructs

Las estructuras misceláneas modifican un modelo de expresión regular o proporcionan información sobre él.Miscellaneous constructs either modify a regular expression pattern or provide information about it. En la tabla siguiente se enumeran las construcciones misceláneas admitidas por .NET.The following table lists the miscellaneous constructs supported by .NET. Para obtener más información, consulte Construcciones misceláneas.For more information, see Miscellaneous Constructs.

ConstrucciónConstruct DefiniciónDefinition EjemploExample
(?imnsx-imnsx) Establece o deshabilita opciones como la no distinción entre mayúsculas y minúsculas en medio de un patrón. Para más información, consulte Opciones de expresiones regulares.Sets or disables options such as case insensitivity in the middle of a pattern.For more information, see Regular Expression Options. \bA(?i)b\w+\b coincide con "ABA", "Able" en "ABA Able Act"\bA(?i)b\w+\b matches "ABA", "Able" in "ABA Able Act"
(?# comentario )(?# comment ) Comentario alineadoInline comment. El comentario termina en el primer paréntesis de cierre.The comment ends at the first closing parenthesis. \bA(?#Matches words starting with A)\w+\b
# [hasta el final de la línea]# [to end of line] Comentario en modo XX-mode comment. El comentario comienza en un carácter # sin escape y continúa hasta el final de la línea.The comment starts at an unescaped # and continues to the end of the line. (?x)\bA\w+\b#Matches words starting with A

Vea tambiénSee also