Форум программистов, компьютерный форум, киберфорум
Java SE (J2SE)
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.75/55: Рейтинг темы: голосов - 55, средняя оценка - 4.75
2 / 2 / 1
Регистрация: 01.08.2012
Сообщений: 67

Регулярные выражения (ДВОЕТОЧИЕ)

17.12.2016, 10:14. Показов 10398. Ответов 5
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Всем привет! Простите пожалуйста, может глупый вопрос, но никак не могу разобраться, на джаву недавно пересел. Мне нужно через регулярное выражение провериь время в 24 часовом формате (HH:mm)

то бишь что-то примерно такое ("^([0-1][0-9]|2[0-3]):([0-5][0-9])$"), но это не работает, и я никак не могу понять в чем беда. Мне кажется что все дело в двоеточии, но как его экранировать не пойму.
0
IT_Exp
Эксперт
34794 / 4073 / 2104
Регистрация: 17.06.2006
Сообщений: 32,602
Блог
17.12.2016, 10:14
Ответы с готовыми решениями:

Регулярные выражения
Задача найти в файле строки, которые не имеют пробелов. Нужно использовать регулярные выражения. Считывание сделал, а дальше никак. ...

Регулярные выражения
Нужно из строки достать все числа,это я сделал с помощью регулярных выражений,а как сделать чтоб если в строки между числами есть...

Регулярные выражения
Задача найти в строке подстроку которая обрамлена " (кавычками) перед которыми нет \ (обратных слешей). Внутри подстроки может быть 0 или...

5
Эксперт Java
 Аватар для turbanoff
4094 / 3828 / 745
Регистрация: 18.05.2010
Сообщений: 9,331
Записей в блоге: 12
18.12.2016, 00:02
Покажите полный код на java как вы проверяете свою регулярку.
Скобочки и кавычки точно часть регулярки у вас ?
0
 Аватар для we2seek
84 / 84 / 42
Регистрация: 25.01.2010
Сообщений: 386
19.12.2016, 02:34
Цитата Сообщение от Hedkost Посмотреть сообщение
но это не работает
Мир пал и регулярки перестали работать?
А вообще на вот, попробуй классный сайт, я им обычно пользуюсь для теста регулярок, если JUnit писать лень или чего-то не понимаю... http://www.regexplanet.com/adv... index.html
1
 Аватар для Vadimushka D
2 / 2 / 0
Регистрация: 06.09.2014
Сообщений: 51
19.12.2016, 08:02
"^([\\0-\\1][\\0-\\9]|\\2[\\0-\\3])\\[\\0-\\5][\\0-\\9])$", где то так должна выглядеть, хотя лучше создайте Pattern.compile(String regex) и вместо regex вашу регулярку, она должна преобразоваться до того состояния чтобы его понимала сам java-компилятор,
0
12 / 11 / 12
Регистрация: 14.08.2016
Сообщений: 80
19.12.2016, 13:01
Может, просто забыли применить .matches() или .find() к матчеру?
0
 Аватар для we2seek
84 / 84 / 42
Регистрация: 25.01.2010
Сообщений: 386
21.12.2016, 11:48
Была минута пока ждал очередь к кофемашине:

App.java
Java
1
2
3
4
5
6
7
8
9
package com.we2seek.demo;
 
import java.util.regex.Pattern;
 
public class App {
    public static final Pattern pattern = Pattern.compile("^([0-1][0-9]|2[0-3]):([0-5][0-9])$");
 
    public static void main(String[] args) {}
}
AppTest.java
Java
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
package com.we2seek.demo;
 
 
import org.junit.Assert;
import org.junit.Before;
import org.junit.Test;
 
import java.util.Arrays;
 
public class AppTest {
 
    private String[] shouldBePassed;
    private String[] shouldBeFailed;
 
    @Before
    public void setUp() {
        shouldBePassed = new String[]{"09:01", "09:00", "08:59"};
        shouldBeFailed = new String[]{"08:60", "8:00", "08:0", "8:0"};
    }
 
 
    @Test
    public void patternTest() {
        System.out.println(String.format("Data: %s", Arrays.toString(shouldBePassed)));
        System.out.println(String.format("Pattern: %s", App.pattern));
 
        Arrays.stream(shouldBePassed).forEach(time -> {
            boolean match = App.pattern.matcher(time).matches();
            Assert.assertTrue(String.format("Time %s do not pass pattern %s", time, App.pattern), match);
        });
 
        Arrays.stream(shouldBeFailed).forEach(time -> {
            boolean match = App.pattern.matcher(time).matches();
            Assert.assertFalse(String.format("Time %s do not pass pattern %s", time, App.pattern), match);
        });
    }
 
}
Все работает, автор, что не так? Я прям переживаю)))
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
BasicMan
Эксперт
29316 / 5623 / 2384
Регистрация: 17.02.2009
Сообщений: 30,364
Блог
21.12.2016, 11:48
Помогаю со студенческими работами здесь

Регулярные выражения
Всем доброго времени суток! Есть задачка распарсить что-то типа лвоып12,344двжаыпол-вола34рплоыв1,235. Должен получиться массив . То...

Регулярные выражения
Не могу понять, регулярные выражения нужны что бы искать строки в определенном виде, преобразовывать строки в определенный вид или вообще...

Регулярные выражения
Допустим, есть текст int arr = 123; int n = new int; System.out.print(arr); Нужно с помощью регулярных выражений: 1) заменить...

Регулярные выражения
Пока только начинаю разбираться с регулярными выражениями. Делал лабораторную для вуза, уперся как раз в них. Нужно чтобы выражение...

Регулярные выражения
Здравствуйте! Есть строка : "abcbcaacbcbaacb" вообщем состоящая из "a", "b" и "с" в рандомном порядке и количестве. Как с помощью...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
6
Ответ Создать тему
Новые блоги и статьи
Автозаполнение реквизита при выборе элемента справочника
Maks 27.03.2026
Программный код из решения ниже на примере нетипового документа "ЗаявкаНаРемонтСпецтехники" разработанного в конфигурации КА2. При выборе "Спецтехники" (Тип Справочник. Спецтехника), заполняется. . .
Сумматор с применением элементов трёх состояний.
Hrethgir 26.03.2026
Тут. https:/ / fips. ru/ EGD/ ab3c85c8-836d-4866-871b-c2f0c5d77fbc Первый документ красиво выглядит, но без схемы. Это конечно не даёт никаких плюсов автору, но тем не менее. . . всё может быть. . .
Автозаполнение реквизитов при создании документа
Maks 26.03.2026
Программный код из решения ниже размещается в модуле объекта документа, в процедуре "ПриСозданииНаСервере". Алгоритм проверки заполнения реализован для исключения перезаписи значения реквизита,. . .
Команды формы и диалоговое окно
Maks 26.03.2026
1. Команда формы "ЗаполнитьЗапчасти". Программный код из решения ниже на примере нетипового документа "ЗаявкаНаРемонтСпецтехники" разработанного в конфигурации КА2. В качестве источника данных. . .
Кому нужен AOT?
DevAlt 26.03.2026
Решил сделать простой ланчер Написал заготовку: dotnet new console --aot -o UrlHandler var items = args. Split(":"); var tag = items; var id = items; var executable = args;. . .
Отправка уведомления на почту при изменении наименования справочника
Maks 24.03.2026
Программная отправка письма электронной почты на примере изменения наименования типового справочника "Склады" в конфигурации БП3. Перед реализацией необходимо выполнить настройку системной учетной. . .
модель ЗдравоСохранения 5. Меньше увольнений- больше дохода!
anaschu 24.03.2026
Теперь система здравосохранения уменьшает количество увольнений. 9TO2GP2bpX4 a42b81fb172ffc12ca589c7898261ccb/ https:/ / rutube. ru/ video/ a42b81fb172ffc12ca589c7898261ccb/ Слева синяя линия -. . .
Midnight Chicago Blues
kumehtar 24.03.2026
Такой Midnight Chicago Blues, знаешь?. . Когда вечерние улицы становятся ночными, а ты не можешь уснуть. Ты идёшь в любимый старый бар, и бармен наливает тебе виски. Ты смотришь на пролетающие. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru