2010-06-07 22 views
5

Soy nuevo en Regex en Java y no puedo encontrar la manera de incluir grupos de captura con nombre en una expresión. Estoy escribiendo un Convertidor de imágenes ScrewTurn para Confluence's Universal Wiki Converter. Esto es lo que tengo:¿Cómo incluir grupos de captura con nombre en java regex?

String image = "\\[image(?<align>auto)?\\|\\|{UP\\(((?<namespace>\\w+)\\.)?(?<pagename>[\\w-]+)\\)}(?<filename>[\\w- ]+\\.[\\w]+)\\]"; 

Pattern imagePattern = Pattern.compile(image, Pattern.CASE_INSENSITIVE); 

Es lanzar esta excepción en Pattern.comiple():

java.util.regex.PatternSyntaxException: Unknown look-behind group near index 19 
\[image(?<align>auto)?\|\|{UP\(((?<namespace>\w+)\.)?(?<pagename>[\w-]+)\)}(?<filename>[\w- ]+\.[\w]+)\] 
       ^

he utilizado grupos de captura nombradas como esto antes en C# (?<namedgroup>asdf), pero no en Java. ¿Qué me estoy perdiendo?

Respuesta

Cuestiones relacionadas