@n199a
Java

Как найти строку с помощью регулярного выражения, содержащую определенный тип знака препинания?

Имеются строки вида:
1, 2, 3
1. 2. 3
1 - 2 - 3

Как найти строки с помощью регулярного выражения, содержащую определенный тип знака препинания, чтобы было так:
1, 2, 3 (корректная, т.к. для разделения чисел используется один знак препинания)
1. 2. 3 (корректная, т.к. для разделения чисел используется один знак препинания)
1, 2. 3 (НЕ корректная, т.к. для разделения чисел используется два типа знаков препинания: точка и запятая)


Начал составлять такое регулярное выражение \\p{P}*^[a-zA-Z]+
  • Вопрос задан
  • 65 просмотров
Решения вопроса 1
@dodo512
String regex = "^\\d+([,.])\\h*\\d+(\\1\\h*\\d+)*$";

https://regex101.com/r/c4RYTj/1
Ответ написан
Пригласить эксперта
Ответы на вопрос 1
sotvm
@sotvm
Умный поймёт , а дураку и так всё равно.
\d+(\s*[,.]\s*\d+)*

ps
вот так (исправил )))
^\s*\d+(\s*\.\s*\d+\s*)*$|^\s*\d+(\s*\,\s*\d+\s*)*$
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы
AwardWallet Пермь
от 50 000 до 80 000 ₽
Emphasoft Санкт-Петербург
от 150 000 до 300 000 ₽
Kotelov Санкт-Петербург
от 150 000 до 190 000 ₽
10 мая 2021, в 04:00
1400 руб./в час
10 мая 2021, в 03:06
120000 руб./за проект
10 мая 2021, в 03:04
40000 руб./за проект