Articles of regex

Confundido sobre el grupo de Matcher en Java regex

Tengo la siguiente línea, typeName=”ABC:xxxxx;”; Necesito buscar la palabra ABC , Escribí el siguiente fragmento de código, Pattern pattern4=Pattern.compile(“(.*):”); matcher=pattern4.matcher(typeName); String nameStr=””; if(matcher.find()) { nameStr=matcher.group(1); } Entonces, si pongo el group(0) obtengo ABC: pero si pongo el group(1) , es ABC , entonces quiero saber ¿Qué significa este 0 y 1 ? Será mejor si […]

Cómo usar condicionales cuando se reemplaza en Notepad ++ a través de regex

Considere la siguiente expresión regular: ([a-zA-Z])([a-zA-Z]?)/([a-zA-Z])([a-zA-Z]?) Si el texto es: a/b los grupos de captura serán: /1 ‘a’ /2 ” /3 ‘b’ /4 ” Y si el texto es: aa/b los grupos de captura serán: /1 ‘a’ /2 ‘a’ /3 ‘b’ /4 ” Supongamos que quiero encontrar y reemplazar esta cadena en Notepad ++ de […]

¿Cómo uso expresiones regulares en scripts bash?

Quiero verificar si una variable tiene un año válido usando una expresión regular. Leyendo el manual bash entiendo que podría usar el operador = ~ Mirando el ejemplo a continuación, esperaría ver “no está bien” pero veo “OK”. ¿Qué estoy haciendo mal? i=”test” if [ $i=~”200[78]” ] then echo “OK” else echo “not OK” fi

String.replaceAll (regex) hace el mismo reemplazo dos veces

Puede alguien decirme por que System.out.println(“test”.replaceAll(“.*”, “a”)); Resultados en aa Tenga en cuenta que el siguiente tiene el mismo resultado: System.out.println(“test”.replaceAll(“.*$”, “a”)); He probado esto en Java 6 y 7 y ambos parecen comportarse de la misma manera. ¿Me estoy perdiendo algo o es esto un error en el motor de expresiones regulares de Java?

Regex look-behind sin longitud máxima obvia en Java

Siempre pensé que una afirmación de mirar hacia atrás en la API regex de Java (y muchos otros lenguajes para el caso) debe tener una longitud obvia. Entonces, los cuantificadores STAR y PLUS no están permitidos dentro de las miradas . El excelente recurso en línea regular-expressions.info parece confirmar (algunas de) mis suposiciones: “[…] Java […]

¿Cómo extraer la palabra enésima y contar las ocurrencias de palabras en una cadena MySQL?

Me gustaría tener una consulta mysql como esta: select word, count(*) from table group by word; Todos los ejemplos de expresiones regulares en mysql se utilizan para consultar si el texto coincide con la expresión, pero no para extraer texto de una expresión. ¿Hay tal syntax?

Expresión regular para omitir el carácter en el grupo de captura

¿Es posible omitir un par de caracteres en un grupo de captura en expresiones regulares? Estoy utilizando .NET expresiones regulares, pero eso no debería importar. Básicamente, lo que estoy buscando es: [texto al azar] AB-123 [texto al azar] y necesito capturar ‘AB123’, sin el guion. Sé que AB tiene 2 o 3 caracteres en mayúsculas […]

regex para hacer coincidir algo si no está precedido por otra cosa

Entonces, con regex en java, quiero escribir una expresión regular que coincida si y solo si el patrón no está precedido por ciertos caracteres. Por ejemplo: String s = “foobar barbar beachbar crowbar bar “; Quiero hacer coincidir si la barra no está precedida por foo. Entonces el resultado sería: barbar beachbar crowbar bar Sé […]

¿Cuál es la expresión regular para extraer todos los emojis de una cadena?

Tengo una cadena codificada en UTF-8. Por ejemplo: Thats a nice joke 😆😆😆 😛 Tengo que extraer todos los emojis presentes en la oración. Y el emoji podría ser cualquier Cuando esta oración se visualiza en la terminal usando el comando less text.txt se ve como: Thats a nice joke Este es el código UTF […]

¿Expresión regular para validar nombres y apellidos?

Aunque esto parece una pregunta trivial, estoy bastante seguro de que no lo es 🙂 Necesito validar nombres y apellidos de personas de todo el mundo. ¿Cómo puedo hacer eso con una expresión regular? Si solo fueran ingleses, creo que esto lo cortaría: ^[az -‘]+$ Sin embargo, necesito apoyar también estos casos: otros símbolos de […]