Можно ли использовать выражение ретроспективного выражения Regex для сопоставления всех слов, предшествующих тому, что находится в квадратных скобках, сопоставляя слова consectetur и libero в этом примере?
Lorem ipsum dolor sit amet, consectetur [adipiscing] elit. Nunc eutellus vel nunc pretium lacinia. Proin sed lorem. Cras sed ipsum. Nunc a libero [quis] risus sollicitudin imperdiet.
Я хочу отделить словарные статьи в MS Word от содержимого записи. Записи сопровождаются фонетической транскрипцией в квадратных скобках, и после того, как они выбраны таким образом, я бы увеличил их шрифт, чтобы они отличались от остального текста и отделялись от содержимого.
EDIT: выражение, которое дал Кент, отлично работает с однословными записями, например:
кипение ['boilin] прил. 1. vreo, uzavreo, kipući 2. razjaren, uzrujan
с дефисными записями из двух слов, такими как:
точка кипения ['boilin point] s vrelište
но первое слово фразовых глаголов и других записей, состоящих из двух слов, опущено, что означает, что в таких записях, как:
болтать ['bault'aut] vt isključiti; изланути
совпадение вышло, а не выскочило, как мне было бы нужно.
Поскольку это словарь, и я могу применить выражение регулярного выражения для каждого диапазона букв отдельно, я смог бы решить эту проблему, если бы у меня было регулярное выражение, которое будет искать первое слово, начинающееся с определенной буквы, которая предшествует скобкам, сопоставьте это слово и слово, следующее за ним. Для записей «B», как в моих примерах, это будет означать, что выражение будет соответствовать либо отдельным словам, начинающимся с буквы B, записям из двух слов с дефисом как точка кипения и будет соответствовать «bolt » во фразовых глаголах, таких как «болтнуть», вместе с предлогом, который следует за ним, т. е. «out» в данном случае.
В моем словаре может быть всего несколько статей из двух слов, если они вообще есть, где слова в этих статьях начинаются с одной и той же буквы, и я действительно могу жить с такой небольшой погрешностью.
EDIT2: я поместил разрывы абзацев перед квадратными скобками, и теперь у меня есть записи в конце предыдущей строки, например:
[aidwulf] s zool vrsta hijene (Proteles cristata) Борода Арона
[earanzrod] s bot divizma (Verbascum Thapsus) Abacca
[a'baid'on] vi biti na pomoći, stajati uz bok abide with
Борода Аарона — это запись для второй строки, начинающаяся с квадратных скобок, Abacca — это запись для третьей строки, начинающаяся с квадратных скобок, и так далее.
Чтобы решить мою проблему, мне нужны два регулярных выражения. Во-первых, мне нужно регулярное выражение для соответствия каждой букве Aa в словах, начинающихся с Aa, и только в словах перед последним в каждой строке. В моих примерах это соответствует A в Aaron's в первом примере и a в abide в третьем примере. Затем я заменю эту букву на звездочку, чтобы получить *бороду Рона и *поддерживаю
Второе регулярное выражение будет соответствовать каждому последнему слову (включая составные двухсловные через дефис) в каждой строке и словах, начинающихся со звездочки, которые я ранее создал.
Спасибо вам за помощь.
[foo]
2) вы хотите сопоставить с первогоb/B
до первого[foo]
? - person Kent   schedule 19.04.2013