Estoy detrás de una expresión regular que validará un código postal complejo completo del Reino Unido solo dentro de una cadena de entrada. Todos los formularios de códigos postales poco comunes deben estar cubiertos, así como lo habitual. Por ejemplo: Partidos CW3 9SS SE5 0EG SE50EG se5 0eg WC2H 7LT …
¿Cómo puedo reemplazar foobarcon foo123bar? Esto no funciona: >>> re.sub(r'(foo)', r'\1123', 'foobar') 'J3bar' Esto funciona: >>> re.sub(r'(foo)', r'\1hi', 'foobar') 'foohibar' Creo que es un problema común cuando se tiene algo así \number. ¿Alguien puede darme una pista sobre cómo manejar esto?
En Python, la (?P<group_name>…) sintaxis permite referirse a la cadena coincidente a través de su nombre: >>> import re >>> match = re.search('(?P<name>.*) (?P<phone>.*)', 'John 123456') >>> match.group('name') 'John' ¿Qué significa "P"? No pude encontrar ninguna pista en la documentación oficial . Me encantaría tener ideas sobre cómo ayudar a …
Estoy tratando de analizar el siguiente tipo de cadena: [key:"val" key2:"val2"] donde hay clave arbitraria: pares "val" dentro. Quiero tomar el nombre de la clave y el valor. Para aquellos curiosos, estoy tratando de analizar el formato de base de datos de task warrior. Aquí está mi cadena de prueba: …
Tengo una lista de palabras: bau ceu diu fou gau Quiero convertir esa lista en: byau cyeu dyiu fyou gyau Intenté sin éxito el comando: :%s/(\w)(\w\w)/\1y\2/g Dado que esto no funciona, ¿qué debo cambiar para que los grupos de captura de expresiones regulares funcionen en Vim?
Estoy usando rubular.com para construir mi expresión regular, y su documentación describe lo siguiente: (...) Capture everything enclosed (a|b) a or b ¿Cómo puedo usar una expresión OR sin capturar su contenido? Por ejemplo, digamos que quiero capturar "ac" o "bc". No puedo usar la expresión regular (a|b)(c) ¿Derecha? Desde …
¿Hay alguna forma de reemplazar directamente todos los grupos usando la sintaxis de expresiones regulares? La forma normal: re.match(r"(?:aaa)(_bbb)", string1).group(1) Pero quiero lograr algo como esto: re.match(r"(\d.*?)\s(\d.*?)", "(CALL_GROUP_1) (CALL_GROUP_2)") Quiero construir la nueva cadena instantáneamente a partir de los grupos que Regex acaba de capturar.
Tengo este código y quiero saber si puedo reemplazar solo grupos (no todos los patrones) en Java regex. Código: //... Pattern p = Pattern.compile("(\\d).*(\\d)"); String input = "6 example input 4"; Matcher m = p.matcher(input); if (m.find()) { //Now I want replace group one ( (\\d) ) with number //and …
Necesito capturar varios grupos del mismo patrón. Supongamos que tengo la siguiente cadena: HELLO,THERE,WORLD Y he escrito un siguiente patrón ^(?:([A-Z]+),?)+$ Lo que quiero que haga es capturar cada palabra, de modo que el Grupo 1 sea: "HOLA", el Grupo 2 sea "ALLÍ" y el Grupo 3 sea "MUNDO" Lo …