Я хочу улучшить свои знания в регулярном выражении. Есть ли какие-либо упражнения/инструменты, которые вы бы рекомендовали?
Как осваивать регулярные выражения?
Ответ 1
Я использую Освоение регулярных выражений от O'Reilly.
Ответ 2
Вот несколько хороших ресурсов:
Ответ 3
Я очень рекомендую читать Освоение регулярных выражений. Он оправдывает свое название.
Ответ 4
Учебники:
http://www.regular-expressions.info/tutorial.html - Один большой учебник по регулярному выражению
Онлайн-тестеры:
http://osteele.com/tools/reanimator/ - он оживляет ваше регулярное выражение как автомат, классный!
http://regexpal.com/ - действительно классный и простой в использовании
http://www.fileformat.info/tool/regex.htm
Инструменты:
http://www.radsoftware.com.au/regexdesigner/
.Net:
http://msdn.microsoft.com/en-us/library/az24scfc(VS.71).aspx
Спецификация Java:
http://java.sun.com/docs/books/tutorial/essential/regex/
GeneXus X специфический:
http://wiki.gxtechnical.com/commwiki/servlet/hwikibypageid?4606
Ответ 5
regular-expressions.info - отличный сайт, и RegexBuddy - отличный инструмент визуализации.
Ответ 6
Начните использовать RegExBuddy!
Ответ 7
Лучший способ освоить регулярные выражения - это использовать их в повседневной работе. Используйте редактор с регулярным выражением. Я рекомендую NotePad ++. Используйте функцию поиска и замены с включенным регулярным выражением.
Вам нужно знать только основы, чтобы начать. Слова, персонажи, цифры, пробелы. Их довольно легко запомнить. В первый раз вы не получите все правильно. Но вы будете учиться каждый раз, когда вы это пробуйте.
Помните, что если вы не используете его регулярно, вы, вероятно, забудете регулярное выражение через пару недель.
Ответ 8
Чтобы справиться с ними, не останавливайтесь на чтении о них. Перейдите в список сообщений с тегами regex и начните решать проблемы. Не заглядывайте в ответы, пока не будете готовы.
Ответ 9
Expresso - довольно хорошая, бесплатная утилита RegEx:
http://www.ultrapico.com/Expresso.htm
И Regular Expressions Cheat Sheet, который вам пригодится:
http://www.addedbytes.com/cheat-sheets/regular-expressions-cheat-sheet/
Ответ 10
Я держу копию регулярного выражения Pocket Reference под рукой, пока я работаю - это дает мне краткую информацию о необходимости использования из RegEx примерно в десяти языках.
Ответ 11
Как упоминает Joe90, чтение о них проходит долгий путь;)
Лично я нахожу http://www.regular-expressions.info/ отличный ресурс для регулярного выражения.
Ответ 12
Практика, практика, практика. Я всегда находил страницу руководства Perl на регулярных выражениях, чтобы быть отличной ссылкой для всех обычных символов и команд регулярного выражения POSIX.
Ответ 13
Помимо уже упомянутых, вы можете попробовать Regex Coach. Я хорошо слышал об этом.
Ответ 14
Теперь мы дали много указаний, чтобы больше узнать о регулярных выражениях, вероятно, стоит назвать Jamie Zawinski:
Некоторые люди, столкнувшись с проблемой, думают: "Я знаю, я буду использовать регулярные выражения". Теперь у них есть две проблемы.
Часть изучения регулярных выражений учится, когда не использовать их (и когда они подходят).
Ответ 15
Как отметил Симон. Самая важная часть в освоении Regex - это когда НЕ использовать регулярное выражение, но это умение придет в конечном итоге. До тех пор используйте регулярное выражение, когда вы выполняете поиск в Word или в своем текстовом редакторе или в Excel. В любом месте, которое дает вам этот вариант, возьмите его, пока не получите хорошую ручку.
Кроме того, узнайте об этих понятиях довольно рано.
- жадный
- ленивым
- какая разница между "." и "\ w"
- "\ б"
- классы коротких символов ( "\ s", "\ d" и т.д.)
Ответ 16
Чтение о них в порядке, но на самом деле получение опыта с помощью инструмента действительно полезно.
Попробуйте регулятор - http://weblogs.asp.net/rosherove/pages/tools-and-frameworks-by-roy-osherove.aspx
Ответ 17
Perl + Roberts Perl Tutorial является источником большинства моих возможностей регулярных выражений.
Ответ 18
Я узнал о них, изучив Perl и используя его для создания парсер конфигурационного файла. Если бы вы хотели сделать что-то подобное в наши дни, я бы предложил Ruby, у которого есть подобный крючок для RE. Когда я узнал об основных принципах, я обнаружил, что многие из инструментов, которые я использовал, имели отличную поддержку RE, если бы вы знали, что хотите использовать ее. Это действительно очень мощный.
Я настоятельно рекомендую ссылку на регулярные выражения Pocket Reference, о которой упоминали другие. Нам будет намного проще найти что-то быстро, как вам нужно будет сделать. Не говоря уже о том, что многие приложения имеют несколько разные способы реализации некоторых его частей (т.е. Должны ли вы иметь обратную косую черту в скобках).
Если вы много обрабатываете текст, я рекомендую изучать RE. Вы оцените его.
Ответ 19
Удостоверьтесь, что вы понимаете основы. Вы можете получить это из разных источников (в зависимости от вашего выбора аромата регулярного выражения).
Вы можете поиграть с ними над чем-то вроде this.
Ответ 20
Вы никогда не сможете освоить регулярные выражения. Просто, когда вы думаете, что поняли, что это обычные выражения, которые овладели вами.
Ответ 21
Исправить ошибки в книге Джеффа Фридля, прежде чем он это сделает. Пока вы этого не сделаете, вы не освоили регулярные выражения.
Ответ 22
Я обнаружил, что изучение того, как они были реализованы под капотом, действительно помогло. Фактически, это изучение языков и дизайн компилятора, с которыми я впервые сталкивался с регулярными выражениями. Зная, откуда они взялись, и как они относятся к грамматикам, DFA, лексеры и т.д. Я думаю, что это настоящая помощь. Это особенно помогает при отладке, так как вы можете так часто входить в ум регулярного выражения.
Ответ 23
http://www.gskinner.com/RegExr/
- это то, что я нашел после просмотра других сайтов
Ответ 24
Если вы работаете в .NET, я рекомендую этот сайт, чтобы визуализировать ваши результаты, а также посмотреть, как настроить свой код.