2015-10-13 4 views
1

Кто-то может помочь мне реализовать следующий шаблон в виде регулярного выражения?Простое регулярное выражение для (x, y) number

apple (x, y);

Где 0 <= x,y <= 100

Так действительные результаты будут включать в себя следующее:

apple(0,0); 
apple(0,10); 
apple(77,12); 
apple(100,0); 
apple(100,100); 

Я надеюсь, что кто-то может мне помочь. Большое спасибо

+0

вы имели в виду смысл C в '0 <= x' _AND_' у <= 100'? Его лучше писать как 'x> = 0, y <= 100', или это какая-то другая вещь, которую вы имели в виду? – sln

+0

0 <= x <= 100 и 0 <= y <= 100 – vihkat

+0

Ну, только что удалил мой пост. Обязательно используйте что-то, что работает. На данный момент ответ Кашрамвда не совсем прав. – sln

ответ

1

Использование инструмента диапазона диапазона Я получаю что-то вроде этого

apple\(0*(\d|[1-9]\d|100),0*(\d|[1-9]\d|100)\);

apple 
\(
0* 
(    # (1 start) 
     \d 
    | [1-9] \d 
    | 100 
)    # (1 end) 
, 
0* 
(    # (2 start) 
     \d 
    | [1-9] \d 
    | 100 
)    # (2 end) 
\); 
+0

Спасибо, он также работает хорошо! – vihkat

+0

Знаете ли вы, как объявить строку с помощью этого фильтра? в Java – vihkat

+0

Я нашел ответ Строковый фильтр = "apple \\ (0 * (\\ d | [1-9] \\ d | 100), 0 * (\\ d | [1-9] \\ d | 100) \\); "; – vihkat

1

Вы можете использовать класс символов, чтобы указать диапазон Вашего номера и квантора {} ограничить повторение:

apple\([0-9]+,(?:[0-9]{1,2}|100)\); 

Посмотреть демо https://regex101.com/r/eG8kE6/2

Подробнее о регулярных выражениях http://www.regular-expressions.info/repeat.html

+0

Thats amazing, спасибо! Я не могу научиться писать выражения, потому что мне нужно это для анализа кода мини-языка и создания объектов из кода. Спасибо! – vihkat

+0

Вскоре я могу принять ваш ответ, спасибо! – vihkat

+0

@vihkat ОК, добро пожаловать! – Kasramvd

Смежные вопросы