Como faço para combinar um caminho com um regex? (maneira correta de citar?)

Como faço para combinar um caminho com um regex? (maneira correta de citar?)

Estou tentando encontrar o regex que corresponda a um caminho do formato ./foo/baz/bar/filename.cem um [[ $string =~ $regex ]]contexto.

Eu esperaria que regex=$'(^\./).*$'correspondesse, mas ${BASH_REMATCH[1]}permanece vazio. Tentei escapar dos parênteses ou deixar de lado .*sem sucesso.

Eu descobri a maneira legal como o acesso a grupos de captura aninhados funciona BASH_REMATCHcom outros $stringconteúdos (um índice adicional para nível de aninhamento e grupo de captura à direita), mas este não consigo igualar.

Qual é o meu fracasso?

Responder1

Funciona com a $stringvariável [[ $string =~ $pattern ]]também sendo citada entre $'...'aspas simples ou '...'sem cifrão prefixado.

informação relacionada