Мне нужно написать регулярное выражение для программы flex, где он находит повторяющиеся символы и отклоняет их, например, он одобряет ABD, но не ABDA или AABD, потому что в выражении повторяется «A». Это заставляет меня ударить головой уже неделю, заблаговременно за ваше время.Отменить повторный символ в lex
ответ
Если в случае нечувствительны:
.*(A.*A|B.*B|C.*C|D.*D|E.*E|F.*F|G.*G|H.*H|I.*I|J.*J|L.*L|M.*M|N.*N|O.*O|P.*P|Q.*Q|R.*R|S.*S|T.*T|U.*U|V.*V|X.*X|Y.*Y|W.*W|Z.*Z).*
Спасибо за ваш ответ, но, к сожалению, он не работает, он находит только постоянные символы ex. AAGD отклонен, но одобрен AGDA (чего я не хочу) –
'. * (A. * A | B. * B | C. * C | D. * D | E. * E | F. * F | GG | HH | II | J | | L | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | –
Ничего себе! Оно работает! Большое спасибо! Но возникла другая проблема (моя ошибка не упоминать об этом), как мне заставить ее печатать сообщение, если оно одобряет слово? Чтобы было проще, я пишу [ABCDEFGHIJKLMNOPQRSTUVXYZ] + printf («сообщение»); и под этим. * (A. * A | B. * B | C. * C | D. * D | E. * E | F. * F | GG | HH | II | JJ | LL | MM | NN | OO | PP | QQ | RR | SS | TT | UU | VV | X X | YY | WW | ZZ). * Printf («сообщение»); но он не «видит» первое правило аппроксимации:/ –
соответствует любому символу, а затем тот же матч, как и в скобках: /(.)\1/
Edit: это соответствует только постоянные письма. используйте /(.).*\1/
для всех матчей.
ОК, поэтому я пишу что-то вроде этого ??? -> /(.)\1/ printf ("% s: reject", yytext); –
Это недопустимый синтаксис в flex или lex: http://flex.sourceforge.net/manual/Patterns.html#Patterns http://dinosaur.compilertools.net/lex/index.html – nhahtdh
- 1. Отменить повторный запрос NSURLConnection
- 2. Как отменить повторный сигнал тревоги
- 3. Невозможно отменить повторный таймер в GWT
- 4. отменить повторный сигнал тревоги в определенное время
- 5. Не удалось отменить повторный будильник Android
- 6. Отменить повторный вызов, если событие не завершено
- 7. Android: невозможно отменить повторный сигнал тревоги
- 8. Найти самый повторный символ из 4 строк
- 9. Не удается отменить, не удается выполнить повторный запуск в vb6
- 10. Символ конца строки для регулярных выражений в ml-lex
- 11. Символ терминала против Token в Lex или Flex
- 12. Как пользователь может отменить повторный токен Amazon FPS?
- 13. Как отменить символ @ в регулярном выражении
- 14. Заменить повторный символ с чем-то другим в строке
- 15. анализатора выражений в Lex/Yacc
- 16. LEX? Общее регулярное выражение
- 17. Clojure: отменить символ для новой структуры данных
- 18. Конкатенированные жетоны в Lex
- 19. непризнанное правило в lex
- 20. Команда проваливается в lex
- 21. Значение INITIAL в lex
- 22. Ошибка в программе lex?
- 23. Шаблоны в Lex
- 24. Операторы Lex и escape-последовательности
- 25. Повторный запрос в Parse
- 26. Повторный таймер в Asp.net
- 27. Повторный шаблон в regex
- 28. Можно ли использовать стрелку в lex yacc?
- 29. Очистить буферы перед вызовом YYACCEPT в yacc/lex
- 30. Выход Flex (Lex) не правильно
Я изменил свой тег «гну-Flex», потому что «гибкий» тег используется для платформы Apache Flex. – weltraumpirat