Also I would like to wild card 46, something like ABCCoreUI-*
Acho que ninguém respondeu o que você pediu "FIX seu padrão para combinar com qualquer dígito no final da sua string, talvez devido ao comportamento do caractere *
na última posição, a saída está concatenando 47 + 42"
Você pode agrupar o regexp em ''
para evitar Shell Globs
Em seguida, para corresponder a zero ou mais dígitos
sed -r 's/ABCCoreUI-[0-9]*/ABCCoreUI-47/' file.json
sed -r 's/ABCCoreUI-[[:digit:]]*/ABCCoreUI-47/' file.json
Para corresponder a zero ou mais caracteres
sed -r 's/ABCCoreUI-.*/ABCCoreUI-47/' file.json
-
-r
é ativar o% estendidosed
regexp -
[0-9]
ou[[:digit:]]
(POSIX) para corresponder a um dígito -
[0-9]*
ou[[:digit:]]*
para corresponder a zero ou mais dígitos -
.*
para corresponder a zero ou mais caracteres
Observe que \d
não está funcionando.