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
123456RE 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 regulerregexdi sisi kanan persembahan. Ekspresi reguler dalam bentuknya yang paling sederhana dilewatkan seperti'[0-9][0-9]'