Проверка Grails с использованием ограничений совпадений - регулярное выражение
Мне действительно тяжело в матчах с ограничениями в Grails, я довольно новичок в этом. я хотел, чтобы мое поле принимало только поле ввода с форматом номера телефона, например 02-3546352, где (код города)-(номер телефона). где другие символы, кроме цифр и тире, не принимаются. Можно ли отфильтровать мой ввод, как то, что я хотел, просто используя регулярные выражения? пожалуйста помоги. спасибо, что поделились своими знаниями.
2 ответа
Предполагая, что это единственный шаблон, который вы хотите сопоставить...
Что-то вроде этого: ^\d{2}-\d{7}$
должно соответствовать любой строке, которая начинается (^
) с любыми двумя цифрами (\d{2}
) следовать за тире (-
) и затем следует 7 цифр (\d{7}
) за которым следует конец строки ($
).
Взгляните на этот учебник для получения дополнительной информации.
Да это так \d+\-\d+
, Если вы знаете точное количество номеров в коде города и телефоне, скажем, 2 для области и 7 для фактического номера, то это будет \d{2}\-\d{7}
Или полный пример:
static constraints = {
phone(matches: '\\d{2}\\-\\d{7}')
}