1 | |
Регулярное выражение для проверки if04.05.2016, 14:18. Показов 1356. Ответов 4
Метки нет (Все метки)
Доброго времени суток.
У меня имеется небольшой опыт использования регулярных выражений, посему ошибка может быть банальной, за что прошу прощения. У меня имеется строки вида: ifvalue == 10 { if value == 10 { if value==10 { Ну, то есть строка с оператором условия. Мне необходимо проверить правильность написания (т.е. ifvalue - ошибка). Также следует забрать подстроку - условия. Раньше я использовал такую регулярку: \s?if\s?(.*)\s?{ В принципе - она отрабатывала как надо. Но я задумался над возможностью, что после оператора if не будет пробела. Каким образом можно перестроить регулярку так, чтобы заиметь группу, в которой будет находится if и все символы до пробела? Но таким образом, чтобы это работало в обе стороны - если есть ошибка, то в группах (MatchCollection) будут: Код
[1]: ifvalue [2]: value == 10 Код
[1]: if [2]: value == 10 \s?(if\S*)\s?(.*)\s?{ Спасибо. PS. Ещё в другом месте (для проверки условия) использую такую регулярку: (!|<|>)=?|==
0
|
04.05.2016, 14:18 | |
Ответы с готовыми решениями:
4
Регулярное выражение для проверки имени файла Регулярное выражение для проверки корректности арифметического выражения Регулярное выражение для проверки строки на номер телефона Регулярное выражение для проверки корректности доменного имени |
1 / 1 / 0
Регистрация: 20.03.2013
Сообщений: 69
|
|
04.05.2016, 14:28 | 2 |
по поводу этого, я думаю подойдет регулярка
0
|
04.05.2016, 14:37 [ТС] | 3 | |||||
Farmer, Спасибо, но предложенная вами регулярка будет работать только на одном варианте (и то, кривом)
if value == { .Да, необходимо, чтобы в дальнейшем "склеить" строку по определенному образцу. Добавлено через 2 минуты Думаю, что тему можно закрыть. Все же добрался до нужного момента:
0
|
1 / 1 / 0
Регистрация: 20.03.2013
Сообщений: 69
|
|
04.05.2016, 14:52 | 4 |
то есть, вам надо отловить именно с ошибкой и запомнить его? или
вот этого куска я все же не пойму "(S)пропустить любой символ кроме пробела"... значит я изначать не правильно понял и смотрел на это с другой стороны (отловить должно только правильный вариант)... но все же хорошо что разобрались
0
|
04.05.2016, 15:56 [ТС] | 5 |
Farmer, Ну, необходимо было регуляркой разбить по блокам (само слово if, потом условие).
Ну и соответственно проверить правильность написания (банальная проверка на пробелы и операторы сравнения). Таким образом я пытаюсь словить неправильное написание.
1
|
04.05.2016, 15:56 | |
04.05.2016, 15:56 | |
Помогаю со студенческими работами здесь
5
Регулярное выражение для проверки наличия только цифр и пробелов в строке Регулярное выражение для проверки что фамилия начинается на "А" Регулярное выражение проверки MAC-адреса Регулярное выражения для проверки НЕ начинается со строки Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |