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