Я пытаюсь проверить строку в Java, чтобы увидеть, если он соответствует формату randomUUID с помощью следующих регулярных выраженийПроверка нулевой против Regex
^[0-9A-F]{8}-[0-9A-F]{4}-[0-9A-F]{4}-[0-9A-F]{4}-[0-9A-F]{12}$
Теперь это работает отлично и поднимает недопустимые строки и так далее – однако , если я передаю нуль String в регулярное выражение, он возвращает true, поэтому, когда я выполняю проверку на аннотации Pattern, сообщения об ограничениях не сообщаются. Является ли это ожидаемым поведением, поскольку String имеет значение null, он не выполняет никакой проверки?
В пути вокруг этого, на метод получения, что я аннотированный с Pattern аннотацию, я использовал этот
return id != null ? id : "null"
Это работает, но это, кажется, немного ... Hacky ко мне :)
Стандартная Java не имеет аннотации 'Pattern', а только класса. Вы используете некоторые рамки? – Pshemo
Я предполагаю, что передача пустой строки создаст исключение NullPointerException. Можете ли вы добавить код, в котором вы на самом деле применяете шаблон? –
Я использую аннотации Hibernate, насколько я знаю, когда null передан, проверка регулярных выражений не выполняется, поэтому я предполагаю, что это не так с моим кодом! – KingTravisG