Regular Expressions 101

Save & Share

  • Regex Version: ver. 2
  • Update Regex
    ctrl+⇧+s
  • Save new Regex
    ctrl+s
  • Add to Community Library

Flavor

  • PCRE2 (PHP >=7.3)
  • PCRE (PHP <7.3)
  • ECMAScript (JavaScript)
  • Python
  • Golang
  • Java 8
  • .NET 7.0 (C#)
  • Rust
  • Regex Flavor Guide

Function

  • Match
  • Substitution
  • List
  • Unit Tests

Tools

Sponsors
There are currently no sponsors. Become a sponsor today!
An explanation of your regex will be automatically generated as you type.
Detailed match information will be displayed here automatically.
  • All Tokens
  • Common Tokens
  • General Tokens
  • Anchors
  • Meta Sequences
  • Quantifiers
  • Group Constructs
  • Character Classes
  • Flags/Modifiers
  • Substitution
  • A single character of: a, b or c
    [abc]
  • A character except: a, b or c
    [^abc]
  • A character in the range: a-z
    [a-z]
  • A character not in the range: a-z
    [^a-z]
  • A character in the range: a-z or A-Z
    [a-zA-Z]
  • Any single character
    .
  • Alternate - match either a or b
    a|b
  • Any whitespace character
    \s
  • Any non-whitespace character
    \S
  • Any digit
    \d
  • Any non-digit
    \D
  • Any word character
    \w
  • Any non-word character
    \W
  • Non-capturing group
    (?:...)
  • Capturing group
    (...)
  • Zero or one of a
    a?
  • Zero or more of a
    a*
  • One or more of a
    a+
  • Exactly 3 of a
    a{3}
  • 3 or more of a
    a{3,}
  • Between 3 and 6 of a
    a{3,6}
  • Start of string
    ^
  • End of string
    $
  • A word boundary
    \b
  • Non-word boundary
    \B

Regular Expression

/
/
gmu

Test String

Code Generator

Generated Code

import java.util.regex.Matcher; import java.util.regex.Pattern; public class Example { public static void main(String[] args) { final String regex = "[А-ЯЁ][\\S\\s]+?(?:[\\S][^А-ЯЁ\\.]){1,}(?:\\.+|[?!])(?!(\\s*[а-яё)\\-\"«0-9\\.]))"; final String string = "Научный текст - это разновидность текста, написанного на общелитературном языке, обладающая грамматическими, лексическими, структурно-смысловыми и логико-композиционными Иванов И.И. особенностями. В научном тексте иначе, г. Москва чем в тексте деловом, публицистическом или художественном, используются функциональные типы речи (описание, повествование, рассуждение, доказательство и др.). Здесь иной набор общеязыковых и собственно текстовых средств, активно используются такие приемы мышления, как аналогия и гипотеза; композиция такого текста, как правило, задана логикой научного доказательства (выдвижение версии, рабочей гипотезы, дедуктивные или индуктивные способы мышления, обоснование гипотезы, доведение ее до уровня достоверного теоретического знания и т. д.).\n\n" + "Типология текста, его жанровые и стилистические разновидности обусловлены субъектом научной речи, объектом описания и адресатом научной коммуникации. Принадлежностью к сферам научного общения, научной деятельности обусловлены отбор и употребление определенных лексико-грамматических средств, использование специальных структурных, логико-композиционных схем организации текстового материала.\n\n" + "Основные текстовые категории: связность, структурированность, цельность. Присущие научному стилю логичность, точность, строгость, отвлеченность, обобщенность, информативность находят отражение почти во всех текстовых категориях. Рассмотрим некоторые из них.\n\n" + "Связность. Данная категория характеризует формально-структурную синтаксическую организацию текста, которая обеспечивает логичность и строгость изложения, однозначную интерпретацию содержания. Связность научного текста во многом основывается на логике и объективности исследования предмета, строгости рассуждения.\n\n" + "Существуют различные классификации средств связности. Одна из наиболее распространенных - группировка средств связи в зависимости от их языкового выражения. По этому признаку выделяют:\n" + "1) лексические средства связи (полные, синонимические, контекстуальные, перифразовые и другие повторы, местоименная замена);\n" + "2) лексико-грамматические (союзы, союзные наречия, вводные слова и словосочетания); 3) грамматические (видовременные формы глаголов, порядок слов, синтаксический параллелизм).\n\n" + "В научных текстах наиболее широко представлена связь посредством лексического повтора, при которой определенное слово/словосочетание предшествующего предложения повторяется в последующем, например: Редукция - изменение артикуляционных и акустических характеристик звука, вызванное сокращением его длительности или ослаблением напряженности. Редукции подвергаются главным образом гласные, однако встречается редукция и согласныгх... Различают количественную редукцию - уменьшение длительности звука, вызванное его безударностью, и качественную редукцию - изменение характера артикуляции вследствие сокращения длительности.\n\n" + "Широкое распространение лексического повтора в научной речи связано с устойчивостью терминологии, нежелательностью синонимических замен ввиду стремления к однозначности, точности смысла. Использование синонимов (контекстуальных, окказиональных и др.) и антонимов позволяет избежать повторения, делает речь более выразительной, однако синонимы чаще встречаются в научно-популярной литературе, нежели в академических текстах.\n\n" + "Наиболее частотный и нейтральный вид связи - местоименная замена, так как, с одной стороны, употребление местоимения вместо повторения того же слова позволяет удалить стилистическое однообразие, сохранить терминологическую строгость и точность, а, с другой - использование местоимений для замены целых высказываний или их частей обеспечивает краткость и информационную емкость, необходимую в научных текстах. Кроме того, использование в указанном качестве местоимения это часто связано с переменой аспекта изложения, переходом к оценке, комментированию, пояснению (аналогичные функции могут выполнять указательные местоимения с частицей вот: вот кто, вот что, вот отчего и др.), например: В случае устных и графических результатов (тестирования. - Авт.) дополнительной трудностью является еще и необходимость их хранения в виде, доступном для последующей обработки, для последующего применения алгоритма формализации. Все это сдерживает внедрение ИТ (информационных технологий. - Авт.) ...для анализа результатов не тестовой природы...\n\n" + "Если повторы создают и поддерживают тематическое единство текста, то лексико-грамматические средства связи (союзы, союзные слова, вводные слова и словосочетания, наречия) обеспечивают логическую и композиционную организацию текстового материала, отражая широкий спектр отношений (условных, причинно-следственных, уступительных, сравнительных и т. п.). Это так называемые языковые скрепы, помогающие выстроить текст композиционно и структурно (во-первых, во-вторых, прежде всего, наконец и т. д.); пояснить способ рассмотрения автором проблемы (в частности, в этом смысле, в целом, с одной стороны, с другой стороны, однако, наоборот, напротив); сделать вывод, обобщение, подвести итог, (таким образом, следовательно, итак, значит, в целом, словом и т. д.); конкретизировать, уточнить, добавить (что-либо, именно, кроме того, сверх того, более того и т. д.). К ним примыкают клишированные выражения связи с предшествующей информацией или указания на последующую (как быто сказано, как было показано, как уже отмечалось, как будет видно и т. д.).\n\n" + "К грамматическим средствам организации текста относят обычно порядок слов, синтаксический параллелизм, употребление определенных видовременных форм глагола. Порядок слов и предложений в тексте, отражая характер распределения информации, определяется коммуникативными целями автора. Для научных текстов характерен нейтральный порядок слов, при котором тема (исходная, известная информация) располагается в начале предложения, а рема (новая, важная, актуальная информация) - в его конце. В структурно-синтаксическом плане рема, как правило, совпадает с группой сказуемого, а тема - с подлежащим. Кроме того, порядок слов в предложении зависит от контекста и выполняет текстообразующие функции, участвуя в построении текстов с разной структурой.\n\n" + "Синтаксический параллелизм можно рассматривать как повтор, который проявляется в одинаковом синтаксическом строении предложений, следующих в тексте непосредственно друг за другом. Однотипность синтаксического строения, как правило, наблюдается в грамматической структуре предложения или его частей и в порядке слов. Связь между предложениями усиливается, если отдельные члены предложений имеют одинаковое лексическое наполнение, т. е. синтаксическая связь подкрепляется лексической. Связь этого вида не только обеспечивает смысловое единство текста, но и выполняет функцию выделения и усиления информативно насыщенных фрагментов текста, благодаря чему он становится выразительным. Например: Деление норм на регулятивные, охранительные и дефинитивные явно не является чистым. Поскольку все юридические нормы - правила поведения, постольку все они - и регулятивные, и охранительные, и дефинитивные - регулятивны. Разве уголовно-правовой запрет, являющийся типично охранительным, не регулятивен? Поскольку все юридические нормы включают в себя санкции, постольку все они - и охранительные, и регулятивные, и дефинитивные - охранительны. Разве правило, в соответствии с которым дети обязаны доставлять содержание своим нетрудоспособным родителям, будучи типично регулятивным, не является одновременно и охранительным? Поскольку все нормы опираются на конкретное понимание правовых феноменов, основанное на юридических определениях, постольку все они - и дефинитивные, и регулятивные, и охранительные - дефинитивны. Разве ст. 144 УК, устанавливающая ответственность за кражу, т. е. «тайное похищение чужого имущества», будучи «типичной» охранительной нормой, одновременно не дефинитивна4?.\n\n" + "Таким образом, связность научного текста базируется прежде всего на внутренней логике предмета исследования. Кроме того, в реальных текстах связность обеспечивается совокупностью различных средств. В результате формируются смысловые, структурно-синтаксические и тематические признаки, позволяющие выделять разные типы структурной организации текста.\n\n" + "Структурированность. Эта категория обусловливает неотъемлемое свойство любого сложного объекта выражать отношения, существующие между его частями (элементами, единицами). В многоуровневой организации научного текста могут быть выделены разные элементы и определены отношения между ними, что позволяет построить различные структурные схемы одного и того же текста. В зависимости от отнесенности единиц текста к его теме, композиции или содержанию можно выделить тематическую, композиционную (логико-композиционную) и содержательную (смысловую) структуры.\n\n" + "Тематическую структуру текста определяет предмет изложения, рассмотренный с той или иной степенью детализации. Предмет изложения, т. е. то, о чем сообщается в тексте, составляет его тему. Основу темы составляют элементы объективного мира -материальные объекты, процессы, явления - или выработанные наукой понятия и категории. Раскрытие сущности явления, процесса или понятия - задача автора научного текста. Ее решение требует выделения и описания отдельных содержательных характеристик объекта, которые составляют подтемы текста - аспекты объекта либо его части. Таким образом, совокупность темы и подтем представляет предметно-логическую структуру текста."; final Pattern pattern = Pattern.compile(regex, Pattern.MULTILINE | Pattern.UNICODE_CASE); final Matcher matcher = pattern.matcher(string); while (matcher.find()) { System.out.println("Full match: " + matcher.group(0)); for (int i = 1; i <= matcher.groupCount(); i++) { System.out.println("Group " + i + ": " + matcher.group(i)); } } } }

Please keep in mind that these code samples are automatically generated and are not guaranteed to work. If you find any syntax errors, feel free to submit a bug report. For a full regex reference for Java, please visit: https://docs.oracle.com/javase/7/docs/api/java/util/regex/Pattern.html