Preguntas etiquetadas con regex

390
Split Java String por New Line

Estoy tratando de dividir el texto JTextAreausando una expresión regular para dividir la cadena por \nSin embargo, esto no funciona y también probé con \r\n|\r|nmuchas otras combinaciones de expresiones regulares. Código: public void insertUpdate(DocumentEvent e) { String split[], docStr = null;...

389
¿Qué caracteres especiales se deben escapar en expresiones regulares?

Estoy cansado de siempre tratar de adivinar si debo escapar de caracteres especiales como ' ()[]{}|' etc., cuando uso muchas implementaciones de expresiones regulares. Es diferente con, por ejemplo, Python, sed, grep, awk, Perl, renombrar, Apache, find, etc. ¿Existe algún conjunto de reglas que...

365
¿Cómo encontrar todas las ocurrencias de una subcadena?

Python tiene string.find()ystring.rfind() para obtener el índice de una subcadena en una cadena. Me pregunto si hay algo como lo string.find_all()que puede devolver todos los índices encontrados (no solo el primero desde el principio o el primero desde el final). Por ejemplo: string = "test test...

361
Expresión regular para buscar Gadaffi

Estoy tratando de buscar la palabra Gadaffi. ¿Cuál es la mejor expresión regular para buscar esto? Mi mejor intento hasta ahora es: \b[KG]h?add?af?fi$\b Pero todavía parece que me faltan algunas revistas. ¿Alguna sugerencia? Actualización: encontré una lista bastante extensa aquí:...

359
¿Cómo hago grep para todos los caracteres no ASCII?

Tengo varios archivos XML muy grandes y estoy tratando de encontrar las líneas que contienen caracteres no ASCII. He intentado lo siguiente: grep -e "[\x{00FF}-\x{FFFF}]" file.xml Pero esto devuelve todas las líneas del archivo, independientemente de si la línea contiene un carácter en el rango...

358
Regex: coincidencia con la primera aparición de un personaje

Estoy buscando un patrón que coincida con todo hasta la primera aparición de un personaje específico, digamos un ";" - un punto y coma . Yo escribí esto: /^(.*);/ Pero en realidad coincide con todo (incluido el punto y coma) hasta la última aparición de un punto y

357
Cuantificadores codiciosos versus reacios vs. posesivos

Encontré este excelente tutorial sobre expresiones regulares y aunque intuitivamente entiendo lo que hacen los cuantificadores "codiciosos", "reacios" y "posesivos", parece que hay un serio vacío en mi comprensión. Específicamente, en el siguiente ejemplo: Enter your regex: .*foo // greedy...