BASH ifadesinde ifade ifadesinde normal ifadeyi nasıl ekleyebilirim?Bash regex değiĢtirmesindeki yakalamalara başvurma
Sigara çalışma örneği:
#!/bin/bash
name=joshua
echo ${name//[oa]/X\1}
Ben eşleşti karakteri yerini \1
ile çıkışa jXoshuXa
bekliyoruz.
Bu, aslında çalışmıyor ve çıktılar jX1shuX1
. Biz gelmesi yerine yakalayabilir BASH beklerken Belki olarak sezgisel olmayan ve tüm cehennem gibi ancak bütünlük ruhu içinde tartışmasız belirsiz
"$ {foo/bar/baz}" sözdizimini kullanarak normal ifadeleri kullanabilme konusunda bash (4.1.5) sürümümde hiçbir şey göremiyorum. Bunu yapabilmeniz için neden düşündüğünüze dair herhangi bir referansınız var mı? –
Nerede rastladığımdan emin değilim ama işe yarıyor. Yukarıdaki örneğimi kullanarak 'o' ve 'a'nın bir' X 'ile değiştirildiğini görebilirsiniz. Oldukça kaygan. – joshuapoehls
http://tldp.org/LDP/abs/html/parameter-substitution.html adresine bakın, bunun açıklaması sayfanın aşağısına yaklaşık 3/4'dür. –