Хорошо, у меня есть фраза, разделенная пробелами.Каждый элемент может быть только целым или действительным числом, за исключением двух последних элементов, которые могут быть строкой null.Мое регулярное выражение
([0-9]*\.[0-9]*|[0-9]*) ([0-9]*\.[0-9]*|[0-9]*) ([0-9]*\.[0-9]*|[0-9]*) ([0-9]*\.[0-9]*|[0-9]*|null) ([0-9]*\.[0-9]*|[0-9]*|null)
Я не понимаю, почему в фразе
123 15 3 null null
последний ноль не захватывается.Кто-то упомянул использование «/» и сказал мне, что они похожи на кавычки для регулярных выражений, но мне показалось, что добавление, которое просто должно с помощью регулярного выражения искать эту строку.Я пишу свое регулярное выражение в этой форме, потому что я внедряю его в Java, и мне нужно соответствующим образом разделить группы или элементы.
РЕДАКТИРОВАТЬ: Спасибо всем за отличные ответы.Очевидно, мне нужно больше практики, и, возможно, немного спать!Мое регулярное выражение теперь выглядит намного чище.
Пересмотренное выражение
(\d+\.\d+|\d+) (\d+\.\d+|\d+) (\d+\.\d+|\d+) (\d+\.\d+|\d+|null) (\d+\.\d+|\d+|null)