Доброе утро. Изучаю регулярные выражения, дошёл до групп без захвата. Однако столкнулся с таким практическим заданием:
Закрепим знания? Вот две с половиной задачи, которые помогут нам в этом:
Используя группы без захвата (и группы захвата, и классы символов, и т.д.), напишите регулярное выражение, которое захватывает только правильно отформатированные размеры файлов в строке ниже:
pattern:
string: 6.6KB 1..3KB 12KB 5G 3.3MB KB .6.2TB 9MB.
matches: ^^^^^ ^^^^^ ^^^^^^ ^^^^
group: 11111 1111 11111 111
И решение от автора:
(?:^| )(\d+(?:\.\d+)?[KMGT]B)
Что, а вернее каким образом делает выражение \d+(?:\.\d+)
P. S. ссылка на статью про регулярки