Estoy tratando de encontrar la expresión regular que coincida con una ruta del formato ./foo/baz/bar/filename.c
en un [[ $string =~ $regex ]]
contexto.
Esperaría que regex=$'(^\./).*$'
coincidiera, pero ${BASH_REMATCH[1]}
permanece vacío. Intenté escapar de los paréntesis o dejarlos de lado .*
sin éxito.
Descubrí la buena manera en que funciona el acceso a grupos de captura anidados a través BASH_REMATCH
de otros $string
contenidos (un índice adicional para el nivel de anidamiento y el grupo de captura a la derecha), pero no puedo igualar este.
¿Cuál es mi fracaso?
Respuesta1
Funciona con la $string
variable al [[ $string =~ $pattern ]]
cotizarse también entre $'...'
comillas simples o '...'
sin signo de dólar antepuesto.