URL: https://www.opennet.dev/cgi-bin/openforum/vsluhboard.cgi
Форум: vsluhforumID9
Нить номер: 10483
[ Назад ]

Исходное сообщение
"Bash regex"

Отправлено Sarge , 19-Дек-24 16:26 
например есть каталоги вида
/home/user/qwe123
/home/user/asd456
/home/user/zxc789
надо сделать 2 переменные где:
a='/home/user/qwe'    b='123'
a='/home/user/asd'    b='456'
a='/home/user/zxc'    b='789'

по цифрам вроде нагуглил вот такое
STRING='/home/user/qwe123'
echo ${STRING//[^0-9]/}
123

подскажите как для первой части будет выглядеть


Содержание

Сообщения в этом обсуждении
"Bash regex"
Отправлено pavel_simple. , 19-Дек-24 18:30 
>[оверквотинг удален]
> /home/user/zxc789
> надо сделать 2 переменные где:
> a='/home/user/qwe'    b='123'
> a='/home/user/asd'    b='456'
> a='/home/user/zxc'    b='789'
> по цифрам вроде нагуглил вот такое
> STRING='/home/user/qwe123'
> echo ${STRING//[^0-9]/}
> 123
> подскажите как для первой части будет выглядеть

погугли ещё и A-Za-z


"Bash regex"
Отправлено Sarge , 19-Дек-24 19:44 
>[оверквотинг удален]
>> надо сделать 2 переменные где:
>> a='/home/user/qwe'    b='123'
>> a='/home/user/asd'    b='456'
>> a='/home/user/zxc'    b='789'
>> по цифрам вроде нагуглил вот такое
>> STRING='/home/user/qwe123'
>> echo ${STRING//[^0-9]/}
>> 123
>> подскажите как для первой части будет выглядеть
> погугли ещё и A-Za-z

a-z это понятно, только нужно ещё / чтобы были, добавить как то. Иначе будет homeuserqwe


"Bash regex"
Отправлено shadow_alone , 20-Дек-24 01:44 
$ prefix="hell"
$ suffix="ld"
$ string="hello-world"
$ foo=${string#"$prefix"}
$ foo=${foo%"$suffix"}
$ echo "${foo}"
o-wor

STRING='/home/user/qwe123'
var1=${STRING//[^0-9]/}
var2=${STRING%"$var1"}
echo $var1
echo $var2
-----------
123
/home/user/qwe
-----------


"Bash regex"
Отправлено Sarge , 23-Дек-24 12:16 
>[оверквотинг удален]
> o-wor
> STRING='/home/user/qwe123'
> var1=${STRING//[^0-9]/}
> var2=${STRING%"$var1"}
> echo $var1
> echo $var2
> -----------
> 123
> /home/user/qwe
> -----------

Всё работает, спасибо