No bash, suponha que eu tenha uma string strname
:
strname="ph7go04325r"
Gostaria de extrair os caracteres entre o primeiro "3"
e o último "r"
caractere strname
, salvando o resultado em uma string strresult
. No exemplo acima, o resultado strresult
seria:
strresult="25"
O primeiro "3"
caractere não está necessariamente na posição 8 da string strname
; da mesma forma, o último não"r"
está necessariamente na posição 11. da string. Portanto, ambas as seguintes strings devem render :strname
strresult="25"
strname="ph11go04325raa"
strname="325r"
strname="rgo04325raa"
Além disso, strname=ph12go04330raa"
deve render strresult="30"
.
Eu sou novo no bash scripting e não sei por onde começar a fazer a correspondência de padrões de strings assim. Você tem alguma sugestão?
fonte