commercialweb Ответов: 1

Я хочу знать, как это сделать


Это не задание,я просто пытаюсь сделать определенную практику.

Мой вопрос таков....!
пример:для чисел, использующих регулярное выражение в java для поиска входных данных, это Ч/Б от 1 до 26 или нет

Узор.спички("([1-9]|1[0-9]|2[0-6])", "20")-->это для чисел


Точно так же я хочу для романских чисел.

пример: для RomanNumbers использование regex в java для поиска входных данных является ч/б от 1 до 26 или нет

--->;Я хочу знать, как это сделать lt <---
я попробовал это сделать,
System.out.println(Pattern.matches("([I-IX])", "X"));

но если вход один символ, то это показывает истинное, а другое ложное...

Что я уже пробовал:

example:For Numbers using regex in java to find input is b/w 1 to 26 or not

		Pattern.matches("([1-9]|1[0-9]|2[0-6])", "20")-->this is for numbers


In the same way i want for RomanNumbers.

example: for RomanNumbers using regex in java to find input is b/w 1 to 26 or not
            --->i want know this how to do lt<---

i tried this,
 <pre>System.out.println(Pattern.matches("([I-IX])", "X"));

но если вход один символ, то это показывает истинное, а другое ложное...

1 Ответов

Рейтинг:
1

OriginalGriff

В принципе, пока вы можете это сделать, не делайте этого. Регулярное выражение-это не очень хороший инструмент для сравнения значений, это текстовый процессор, а не интеллектуальный помощник.
Если вы хотите узнать, находится ли значение между диапазоном, преобразуйте его в число с помощью TryParse и сравните его.
Точно так же, если вы хотите проверить римские числа, то вам нужно написать "TryParse" для римских чисел - и это не тривиально и, конечно, не то, что я хотел бы сделать с регулярным выражением. Во всяком случае, отладка регулярного выражения была бы полным кошмаром, когда выполнение того же самого в коде дает вам доступ к отладчику кода, чтобы вы могли точно видеть, что происходит в любое время.
Взгляните на это: Синтаксический анализ римских цифр с использованием неявного приведения в C# - KeesTalksTech[^] ] и вы начнете понимать, насколько сложна задача в коде. Как регулярное выражение? Просто потому, что что-то можно сделать, не означает, что это должно быть сделано!