пытаясь понять, что означает это регулярное выражение [дубликат]

Он пытался подключиться к более старой версии MySQL («версия», «5.1.73»); когда вы используете новую версию драйвера, вы получаете сообщение об ошибке «com.mysql.cj.jdbc.Driver», даже если вам не нужно указывать, какой из них вы используете:

Загрузка класса com.mysql.jdbc.Driver'. This is deprecated. The new driver class is com.mysql.cj.jdbc.Driver '. Драйвер автоматически регистрируется через SPI, и ручная загрузка класса драйвера вообще не нужна.

Я изменил объявление использовать версию mysql-connector-java версии 5.1.38, а в коде я сохранил файл com.mysql.jdbc.Driver.


    mysql
    mysql-connector-java
    5.1.38

Все началось, когда я увидел Ankit Jain's ответ

2
задан Ela Buwa 26 June 2019 в 23:58
поделиться

2 ответа

Давайте разберем это регулярное выражение на несколько разных частей:

  • ^: устанавливает позицию в начале строки
  • [0-9]{2,3}: совпадение числа от 0 до 9 от 2 до 3 раз
  • [- ]{0,1} Соответствует тире от нуля до одного раза (Необязательно)
  • [0-9]{3}: совпадение числа от 0 до 9, ровно 3 раза
  • [- ]{0,1} Соответствует тире от нуля до одного раза (Необязательно)
  • [0-9]{3}: совпадение числа от 0 до 9, ровно 3 раза
  • $: устанавливает положение в конце строки или перед разделителем строки прямо в конце строки (если есть)

Вот несколько строк, которые передают это регулярное выражение:

  • 123-123-123
  • 123123123
  • 12-123-123
  • 12123123

Вот хороший ресурс для изучения / тестовые регулярные выражения: regex101.com

2
ответ дан Zubair 26 June 2019 в 23:58
поделиться

Он соответствует двум или трем цифрам, за которыми следует (необязательно) тире или пробел, затем 3 цифры, снова необязательная тире или пробел и 3 цифры. Кажется, он пытается сопоставить телефонный номер, написанный в разных форматах.

1
ответ дан jacalvo 26 June 2019 в 23:58
поделиться
Другие вопросы по тегам:

Похожие вопросы: