Я получил следующий текстовый файл, который содержит:Regex в Баш scipt
12.3-456, test
test test test
Если строка содержит XX.X-ххх, то я хочу, чтобы напечатать строку. (X являются числа)
Я думаю, что у меня есть правильное регулярное выражение и протестировали его здесь: http://regexr.com/3clu3
я потом использовал это в Баш скрипт, но строка, содержащая текст не печатается. Что я испортил?
#!/bin/bash
while IFS='' read -r line || [[ -n "$line" ]]; do
if [[ $line =~ /\d\d.\d-\d\d\d,/g ]]; then
echo $line
fi
done < input.txt
Заменить '\ d' с' [0-9] 'и избежать точку. –
И никаких косых черт или 'g'. И избегайте '.'. '[[" $ line "= ~ [0-9] {2} \. [0-9] - [0-9] {3},]]' должен делать. – Biffen