У меня есть источник, на котором у меня нет контроля, и я хочу отфильтровать всю строку, в которой есть несколько символов. Например Из этих:
9
8.1.0
5.0
9.0
5.1
8.0.0
7.0 (cdfsdsdsd)
5.0.2
8
7.0.1
7.1
6.0
7.0
Over 32323
7.0 rdx K9 bnsm
9.2.3
8.oo
pp
unknown
8.0_vgfe10051988
6.0.1
8.0.0-derv10051988
9.1
9.0.0
8.0.1
7.0_xccv10051988
7.1.3
10.0
7.0.X.1.C
8.0.0_vged10051988
4.4.4
7.1.2
7.0 [NKL 24 | ABC]
8.1
7.1.1
5.1.1
7.0_Jgrd10051988
9.XXX
9.0.1
8.0
5.0.1
8.1.1
10
Из них мне нужны только те строки, состоящие только из цифр и.
9
8.1.0
5.0
9.0
5.1
8.0.0
5.0.2
8
7.0.1
7.1
6.0
7.0
9.2.3
6.0.1
9.1
9.0.0
8.0.1
7.1.3
10.0
4.4.4
7.1.2
8.1
7.1.1
5.1.1
9.0.1
8.0
5.0.1
8.1.1
10
Я пробовал много регулярных выражений, но ничего не кажется обобщенным c достаточно, это регулярное выражение также дает [0-9]*.?[0-9]
строк. У меня работает ^(\*|\d+(\.\d+){0,2}(\.\*)?)$
, но это не POSIX.
Как мне получить POSIX, который также работает в Redshift?