string=123456
if [ $string == 123456 ]; then
echo 123
fi
Ini berfungsi dengan baik, tetapi jika saya mengubah == ke = ~ Saya mendapatkan kesalahan ini:
./test: line 3: [: =~: binary operator expected
@ val0x00ff tetapi
—
roaima
123456
RE yang valid
@roaima setuju, namun regex dikenal dengan mesinnya, referensi-kembali, karakter-set, karakter meta yang menunjukkan awal dari sebuah string, akhir dari sebuah string, dll.
—
Valentin Bajrami
=~
dalam hal ini salah.=~
membandingkan derai (sisi kiri penugasan) dengan ekspresi regulerregex
di sisi kanan persembahan. Ekspresi reguler dalam bentuknya yang paling sederhana dilewatkan seperti'[0-9][0-9]'