Editores CAT

Regex en editor web (TMS)

El contenido se traduce automáticamente del inglés por Phrase Language AI.

La compatibilidad con regex en el editor web está limitada por la implementación del motor Lucene Regex.

Para usar regex, habilite Concordancia usando regex en la configuración de filtrar. Una marca de verificación verde en el campo de entrada de filtrar indica la validación correcta de una regex válida.

Las consultas no distinguen entre mayúsculas y minúsculas de forma predeterminada. Habilite Concordancia de mayúsculas y minúsculas en la configuración de filtrar para que distingan entre mayúsculas y minúsculas.

Concordancia de palabras (asegurando la concordancia solo de palabras completas y no subcadenas dentro de palabras más largas) no está disponible.

La consulta ^abc$ funcionará como se espera, es decir, realizando la concordancia de todo el segmento, mientras que abc realizará la concordancia de la subcadena abc en cualquier texto.

Limitaciones

No se admite el reemplazo correcto de consultas con formato parcial; por ejemplo, buscar "Jméno: $1, Příjmení: $2." en el texto "\\{b\\>First name<}: Bob, \\{biu\\>Last name\\<biu\\}: Dylan." se reemplazará como “{>Jméno: Bob, Příjmení: Dylan\\<b\\}”

Patrones no admitidos

  • Ancla de límite de palabra \\b usada para la concordancia de palabras exactas (funciona en el editor de escritorio).

  • \\\\[1-9] - Referencias inversas (\\1, \\2, etc.), p. ej., (\\w+)\\s+\\1 para la concordancia de palabras duplicadas como “hello hello”

  • \\(\\?=|\\(\\?!|\\(\\?&lt;=|\\(\\?&lt;! - Lookahead y lookbehind, p. ej., cat(?=\\.jpg) para la concordancia de “cat” solo en “cat.jpg”

  • \\(\\?: - Grupos sin captura, p. ej., (?:Mr|Mrs|Ms)\\. \\w+, pero los grupos de captura (Mr|Mrs|Ms)\\. \\w+ son compatibles y concuerdan con nombres como “Mrs. Smith”, “Mr. Brown”

  • \\(\\?# - Comentarios en línea, p. ej., \\d\{4\}-(?# year)\\d\{2\}-(?# month)\\d\{2\}(?# day) para la concordancia de “2025-06-25”

  • \\(\\?P<[^>]+> - Grupos de captura con nombre, p. ej., (?P<amount>\\d+)\\s?(?P<currency>USD|EUR) para la concordancia de “150 USD” y “99 EUR”

Uso

Concordancia de patrones básica

Punto (.) como marcador de posición para cualquier carácter único

  • c.at: Concordancias: “chat”, “coat”. NO hay concordancia: “cat”, “cheat”

  • wa.ter: Concordancias: “waiter”, “waster”. NO hay concordancia: “water”

  • s.ip: Concordancias: “skip”, “ship”, “slip”. NO hay concordancia: “sip”, “strip”

Cuantificadores

? - Cero o una aparición

  • colou?r: Concordancias: “color”, “colour”

  • g?rain: Concordancias: “grain”, “rain”

  • books?: Concordancias: “book”, “books”

.* - Cualquier número de carácter (incluido ninguno)

  • h.*y: Concordancias: “happy”, “history”, “honey”

  • sa.*d: Concordancias: “sad”, “sand”, “satisfied”

  • m.*ing: Concordancias: “morning”, “meeting”, “marketing”

.+ - Debe aparecer al menos un carácter

  • pa.+er: Concordancias: “paper”, “painter”

  • a.+ed\" Concordancias: “asked”, “accepted”, “allowed”

* - Cero o más apariciones

  • go*al: Concordancias: “goal”, “goooooooal”

+ - Una o más apariciones

  • no+: Concordancias: “no”, “noooooo”

  • $1+: Concordancias: “$1”, “$11”, “$111”

Se recomienda usar un patrón lo más específico posible, ya que los patrones abiertos pueden causar problemas de rendimiento en el editor.

Importante

El editor tiene un límite integrado sobre qué tan complejo puede ser un patrón de expresión regular. Los patrones que son demasiado amplios o que usan mucho los comodines pueden fallar como expresiones regulares no válidas. Para evitar esto:

  • Mantenga los patrones cortos y específicos. error-[0-9]\{3\} está bien; .*a.*b.*c.*d.* no lo está.

  • Minimice los comodines. Cada .+ o .* multiplica la complejidad interna. Prefiera clases de carácter como [A-Z]+ en lugar de .* siempre que sea posible.

  • Evite alternancias largas con repetición. Un patrón como (word1|word2|...|word20){2,} puede exceder el límite rápidamente. Esto se amplifica cuando las alternativas incluyen varias palabras o puntuación, lo que aumenta la complejidad de la expresión regular.

  • Ancle un lado siempre que sea posible. ^prefix.* es mucho menos costoso que .*middle.*.

Si se rechaza el patrón, intente hacerlo más específico: comience con un prefijo fijo más largo y reduzca desde ahí. Considere reducir el número de alternativas o manejarlas en patrones separados en lugar de combinar todo en una expresión regular compleja.

Ejemplo:

Filtrado para direcciones de correo electrónico:

  • Este patrón encontrará concordancia con espacios y todas las palabras circundantes con resultados potencialmente excesivos: .*@.*

  • Para limitar los resultados a todas las direcciones de correo electrónico: [\\w.+\\-]+@[\\w.+\\-]+

  • Para limitar los resultados solo a correos electrónicos .com: [\\w.+\\-]+@[\\w.+\\-]\\.com

  • Para limitar los resultados a aquellos que tienen un dígito en las direcciones de correo electrónico: [\\w.+\\-]*\\d+[\\w.+\\-]*@[\\w.\\-]+

Alternancias (operador OR)

  • cat|dog: coincide con: “cat” y “dog”

  • red|blue|green: coincide con: “red”, “blue”, “green”

Clases y rangos de carácter

  • [A-Z]+: coincide con una o más letras mayúsculas seguidas (una secuencia).

  • [A-Z]{2,}: coincide con cualquier serie de letras mayúsculas (útil, por ejemplo, para hacer concordancia con acrónimos o Strings escritos en letras mayúsculas)

  • [0-9]\{4\}: coincide con números de cuatro dígitos, p. ej. "1999", "2003", "1876" (también se encuentra dentro de una cadena de más de cuatro dígitos; para limitar los resultados, se debería usar la opción de concordancia de palabras planificada para el futuro)

  • [A-Za-z0-9]+: coincide con cualquier cadena alfanumérica (hello! → hello coincidiría, pero ! no es parte de [A-Za-z0-9]; 100% → solo 100 coincidiría)

  • ([A-Za-z]+\\d+|\\d+[A-Za-z]+): coincide estrictamente con una combinación de dígitos y letras, p. ej., “user123”, “Admin99”, “Win11”, “5g”, “1080p”

  • [0-9]{2,4}-[A-Z]{2,3}: coincide con matrículas, p. ej. “12-XY”, “9999-ABC”

Escapar caracteres reservados . ? * { } [ ] ( ) \" \\

  • \\+[0-9]{1,2}: coincide con “+40”, “+1”

  • \\{version: [0-9]+\\}: coincide con “{version: 12}”, “{version: 13}”

  • C:\\\\[A-Za-z]+: coincide con “C:\\Users”, C:\\Documents, “C:\\Desktop”

Filtrado que distingue entre mayúsculas y minúsculas VS que no distingue

  • De forma predeterminada, el filtrado por regex se implementará sin distinguir entre mayúsculas y minúsculas. c.at: coincide con: “chat”, “Chat”, “CHAT” y “coat”, “Coat”, “COAT”

  • El filtrado por regex se puede combinar con el filtro de IU Case sensitive

Grupos de captura

Los grupos de captura de regex se reconocen y la consulta completa se resalta; p. ej., s(e)g resaltará \"seg\". Los grupos de captura se pueden usar para el Reemplazar, p. ej., “Name: Bob” se puede buscar mediante Name: (.*?) y Reemplazar usando una referencia inversa a Jméno: $1”. Las referencias inversas faltantes se manejan correctamente; es decir, la consulta Name: (.*?) con el Reemplazar Jméno: $1, Title: $2 se Reemplazar como Jméno: Bob, Title: $2.

Ejemplos para Reemplazar referencia inversa:

  • filtrar (\\d+),(\\d+) y Reemplazar $1.$2 para normalizar separadores decimales (p. ej., de 5,6 o 35,949 a 5.6 o 35.949)

  • filtrar (\\d+)\\.(\\d+) y Reemplazar $1,$2 para normalizar separadores decimales (p. ej., de 5.6 o 35.949 a 5,6 o 35,949)

  • filtrar (\\d\{4\})-(\\d\{2\})-(\\d\{2\}) y Reemplazar $3/$2/$1 para reformatear la fecha (p. ej., de 2025-06-05 a 05/06/2025)

  • filtrar ID-(\\d{3,}) y Reemplazar Ticket #$1 para extraer el número del ticket (p. ej., de ID-45321 a Ticket #45321)

  • filtrar (cat|dog) y Reemplazar $1-$1 para Duplicar el texto coincidente (p. ej., de cat a cat-cat y de dog a dog-dog)

  • Optional group: filtrar Hello(, (\\w+))? y Reemplazar Hi $1 para transformar saludos Reemplazando \"Hello\" antes de nombres o por sí solo (p. ej., de Hello, John a Hi John y de Hello a Hi)

¿Fue útil este artículo?
★ ★ ★ ★ ★

Sorry about that! In what way was it not helpful?

The article didn’t address my problem.
I couldn’t understand the article.
The feature doesn’t do what I need.
Other reason.

Note that feedback is provided anonymously so we aren't able to reply to questions.
If you'd like to ask a question, submit a request to our Support team.
Thank you for your feedback.