No meu script de shell zsh, uso regexp-replace nname "_{2,}" "_"
com sucesso para reduzir vários "_"s a um único, mas quando tento ${nname//_{2,}/'_'}
zsh parece não corresponder ao padrão.
man zshexpn
é. não está claro. Ele menciona padrões globbing, mas evidentemente outras expressões regulares POSIX 1003.2, como em ${name//[^[:alnum:]]/"_"}
work OK no meu script.
Motivação
Eu estava procurando o equivalente de expansão de parâmetros de
regexp-replace nname "[^[:alnum:]]" "_"
regexp-replace nname "_{2,}" "_"
regexp-replace nname "_+$" ""
regexp-replace nname "^_+" ""
zsh
zsh --version
zsh 5.7.1 (x86_64-apple-darwin19.0)