АвторСообщение



Пост N: 2
Зарегистрирован: 16.09.11
Рейтинг: 0
ссылка на сообщение  Отправлено: 24.09.11 20:19. Заголовок: Регулярные выражения


Доброе время суток!
Не могу разобраться с регулярными выражениями. Если не сложно, напишите здесь примеры каких нибудь полезных регулярных выражений... Заранее благодарю!

Спасибо: 0 
ПрофильЦитата Ответить
Ответов - 57 , стр: 1 2 3 All [только новые]





Пост N: 82
Зарегистрирован: 09.04.11
Рейтинг: 0
ссылка на сообщение  Отправлено: 24.09.11 22:17. Заголовок: Думаю, рациональнее ..


Думаю, рациональнее всего бы было перенести тему в справочный раздел, ибо тема действительно интересна и обширна.
Как-то я, например, долго подбирал регулярку на поиск глав по цифрам, но так ничего путно и не получилось, плюнул, и переименова все главы из "1" в "глава 1"


Спасибо: 1 
ПрофильЦитата Ответить
Разработчик




Пост N: 120
Зарегистрирован: 02.10.06
Откуда: РФ, Санкт-Петербург
Рейтинг: 0
ссылка на сообщение  Отправлено: 25.09.11 14:49. Заголовок: Пожалуй, теорию я ту..


Пожалуй, теорию я тут расписывать не буду, этого добра при желании в интернете можно найти много. Начать стоит хотя бы со странички на википедии.

Что касается практики, то приведу несколько примеров:

чтоб далеко за примером не ходить, начнем с поиска глав =)


пример (главы по цифрам с точкой или без точки):
 1. 
текст текст текст текст~
~текст текст текст текст.

2.
текст текст текст текст~
~текст текст текст текст.

3.
текст текст текст текст~
~текст текст текст текст.


шаблон:

^ *\d+\.?$

"^" - поиск начинается с начала строки
" *" - пробелы в начале строки, если они есть
"\d+" - одна или несколько цифр идущих подряд
"\.?" - если после цифр есть точка, включаем и ее тоже
"$" - конец строки



пример (цифры с точкой + название главы):
 
1. ДОЛГОЖДАННЫЙ ПРИЕМ
текст текст текст текст~
~текст текст текст текст.

2. ТЕНЬ ПРОШЛОГО
текст текст текст текст~
~текст текст текст текст.

3. ТРОЕ - ЭТО КОМПАНИЯ
текст текст текст текст~
~текст текст текст текст.


шаблон:
^ *\d+\..*$

"^" - поиск начинается с начала строки
" *" - пробелы в начале строки, если они есть
"\d+" - одна или несколько цифр идущих подряд
"\." - точка
".*" - что угодно (все символы сколько их есть до конца строки "$")
"$" - конец строки


Пример (пустая строка + название главы + пустая строка):

  Глас рассудка I 

текст текст текст текст~
~текст текст текст текст.

Ведьмак

текст текст текст текст~
~текст текст текст текст.

Глас рассудка II

текст текст текст текст~
~текст текст текст текст.


Шаблон:
\r\n\r\n.{1,50}\r\n\r\n

"\r\n\r\n" - Cимволы перевода строки (CR LF). Два перевода подряд (CR LF CR LF) = пустая строка
".{1,50}" - Название главы (строка не более 50 любых символов)
"\r\n\r\n" - Символы перевода строки (CR LF). Два перевода подряд (CR LF CR LF) = пустая строка
т.е. шаблон ищет строку не более чем в 50 символов, отделенныю от остального текста пустой строкой сверху и снизу.

Примечание: при поиске глав все найденные символы новой строки и пробелы по краям потом удаляются из тэга автоматически, так что можно не заморачиваться с дополнительными шаблонами поиска строк перед и после основного шаблона (вроде "(?<=\r\n\r\n).{1,50}(?=\r\n\r\n)" )



Что касается использования регулярных выражений в словарях, то см, например, тему про омографы...
Для экспериментов можно использовать служебное окно отладки словарей в режиме "RegEx", открывающееся через редактор словарей:
Скрытый текст



Спасибо: 1 
ПрофильЦитата Ответить





Пост N: 12
Зарегистрирован: 22.08.11
Рейтинг: 0
ссылка на сообщение  Отправлено: 25.09.11 19:17. Заголовок: Если нет много време..


Если нет много времени чтобы составить словарь можно начать с простейших выражений типа
(?i)(?<=(ают|гие|дние|жие|кие|нние|рил|тал|хие|шие|шние|щие|ые).{0,5})\bсектора\b = сектора<
(?i)(?<=(али|ать|ают|гие|гли|дние|дул|ены|жие|ись|ите|ить|кие|хие|шие|шние|щие|ые).{0,5})\bсвечи\b = све<чи
и такие в окончания подходят для большинства омографов, но и такой простой поиск поможет избавиться от большинства ошибок при произношении того или иного слова, я на работе в течении дня слушая книгу записываю где он неправильно произносит, а вечером добавляю в словарь.
пы.сы жаль нет поиска по тексту приходится искать в другой программе.
вот словарь замены правда он еще не идеален
click here

Спасибо: 1 
ПрофильЦитата Ответить





Пост N: 9
Зарегистрирован: 29.03.13
Рейтинг: 0
ссылка на сообщение  Отправлено: 27.04.13 01:57. Заголовок: MoppoH пишет: (?i)..


MoppoH пишет:

 цитата:

(?i)(?<=(али|ать|ают|гие|гли|дние|дул|ены|жие|ись|ите|ить|кие|хие|шие|шние|щие|ые).{0,5})\bсвечи\b = све<чи


Всем привет.
Уже всю голову сломал, не понимаю...
Вот ваше мнение какое?? Вы думаете это выражение будет реально работать??
Ну вот сами посмотрите.. на это выражение вываливается ошибка - видимо шаблон али|ать|ают и т.д. нельзя брать в скобки, т.е. группировать...
Единственный способ, который у меня получился - это выражение такого типа:
(?<=али|шие|шние|щие|ые)\b.{0,30}свечи\b
и для анализируемой строки догарали наши свечи
решение будет вида догарали наши свечи, причем вместе с пробелом тут можно посмотреть результат.
и далее, если рег. выражение будет такого типа
(?<=али|шие|шние|щие|ые)\b.{0,30}свечи\b = све<чи, то мы благополучно заменим найденное выражение
наши свечи на выражение све<чи и
итогом будет не строка догарали наши све<чи, а строка догарали све<чи
Может кто знает, решается ли вообще эта задача по поиску конкретного слова (свечи) в зависимости от предшествующего контекста (окончания определений для слова свечи)?


В поисках рая.. Спасибо: 0 
ПрофильЦитата Ответить
Разработчик




Пост N: 222
Зарегистрирован: 02.10.06
Откуда: РФ, Санкт-Петербург
Рейтинг: 0
ссылка на сообщение  Отправлено: 27.04.13 14:43. Заголовок: odinokiyklaus пишет:..


odinokiyklaus пишет:

 цитата:
Ну вот сами посмотрите.. на это выражение вываливается ошибка - видимо шаблон али|ать|ают и т.д. нельзя брать в скобки, т.е. группировать...


Смотря где...

Сущестуют различные реализации интерпретаторов регулярных выражений, и у каждой могут быть небольшие отличия и особенности.
Онлайн сервис по вашей ссылке предназначен для тестирования выражений в среде языка Ruby. В нем, как и во многих других интерпретаторах регулярных выражений, поддержка look-behind ограниченная: результтат внутри (?<=...) всегда должен быть фиксированной длинны, а это значит, что "*", "+", "{x,y}" и прочие квантификаторы для неизвестного количества повторов, а так же варианты различной длинны, разделенные символом "|" недопустимы.

В KooBAudio используется движок регулярных выражений, встроенный в .NET Framework. Он полностью поддерживает все возможности синтаксиса внутри look-behind групп, и такое выражение будет работать.

Для проверки есть встроенная опция "Меню Словари->отладка словарей->RegEx" или кнопка с увеличительным стеклом в панели инструментов редакора словарей. В последней версии как раз она была усовершенствована для удобства работы с рег.выражениями в редакторе.

Есть простой режим проверки рег выражений.
Скрытый текст


В режиме проверки словарей все устроено вот как:
Скрытый текст



Спасибо: 1 
ПрофильЦитата Ответить
Разработчик




Пост N: 223
Зарегистрирован: 02.10.06
Откуда: РФ, Санкт-Петербург
Рейтинг: 0
ссылка на сообщение  Отправлено: 27.04.13 15:44. Заголовок: P.S. Свои словари вы..


P.S.
Свои словари выложу как-нибудь позже, все никак руки не дойдут окончательно рассортировать и привести их в порядок...


Вот еще пара советов с примерами использования регэксов в словарях:


Не обязательно всегда использовать .{0,x}. Если словосочетание более-менее конкретное, можно использовать конструкции типа ( \w+)? для возможного одного слова между ключевым словом и омографом...
(?i)(?<=\b(?:дай|дать|дал|дала|дают|давал|давала|давали) (?: \w+)?)воды\b=воды<



Кроме поиска вперед/назад в группах (?<=...) (?=...) можно так же иногда использовать обратную связь, чтобы вставить содержимое группы в результат замены, например:
(?i)\bстоящ(ий|ая|ему|ей|его|юю|ем|ей|ими)(?= (рядом|неподалеку|около|возле|за|под|у)\b)=стоя<щ$1
$1 будет заменен на результат группы 1 (ий|ая|ему|ей|его|юю|ем|ей|ими)


(?i)\b(замк[ауиео])(х|м|ми|в)?\b(?=[^\r\n\.\?\!]{0,40}(?:откры|отпер|запер|взл[оа]м|вскры|висяч|навесн|ржав|амбарн|хитроумн|хлипк|щелкнул|ключ|двер))=$1<$2
$1 вставит результат (замк[ауиео])
$2 - результат (х|м|ми|в)?


Номера групп присваиваются автоматически, начиная с 1, слева направо. Группы, к которым не нужно потом обращаться рекомендуется обьявлять с ключем ?: (?:шаблон) - для таких групп обратная связь не создается, и они пропускаются при нумерации. Это так же немного ускорит обработку правила. При большом кол-ве правил со обилием группировок это может дать заметный прирост производительности.

В сложных выражениях с обилием вложенных групп можно использовать именованные группы, чтобы не высчитывать номер нужной группы, а обратиться к ней по имени.
(?i)\b(?<начало>замк[ауиео])(?<окончание>х|м|ми|в)?\b(?=[^\r\n\.\?\!]{0,40}(?:откры|отпер|запер|взл[оа]м|вскры|висяч|навесн|ржав|амбарн|хитроумн|хлипк|щелкнул|ключ|двер))=${начало}<${окончание}



Использование обратных связей для омографов в правилах вида
(?i)((али|ать|ают|гие|гли|дние|дул|ены|жие|ись|ите|ить|кие|хие|шие|шние|щие|ые).{0,30}))\bсвечи\b=$1све<чи

Теоретически возможно, но НЕ рекомендуется. Т.к. правило зарезервирует весь соответствующий текст, и прочие правила не смогут его обработать. Например, правило
догарали=>догара<ли
Будет отсеяно в тексте "догарали наши свечи", т.к. слово уже зарезервировано правилом для омографа...

В общем, для таких правил, лучше использовать поиск вперед/назад в (?<=...) (?=...) с ними резервируется только "нужное" слово, а окружающий текст может быть потом обработан другими правилами.

Спасибо: 0 
ПрофильЦитата Ответить





Пост N: 68
Зарегистрирован: 22.08.11
Рейтинг: 1
ссылка на сообщение  Отправлено: 27.04.13 23:06. Заголовок: На самом деле там вс..


На самом деле там все достаточно просто
1 если ищешь только по окончанию то регулярное выражение выглядит примерно так:
(?i)(?<=(а(ли|ть|ют)|(г|дн|ж|к|х|хн|ш|шн|щ)ие|дел|ены|жит|иеся|или|ить|кины|лил|лись|няли|рил|рыл|сал|тся|шую|ые|ыть)\b.{0,5})\bокна\b
(г|дн|ж|к|х|хн|ш|шн|щ)ие это чтобы не писать отдельно гие|дние| и так далее
\b это чтобы искало только в окончание, \b ставит границы слова
.{0,5} количество символов перед этим словом
\bокна\b так же с границами чтобы не искало слова окнами или корень окна в других словах

2 если ищет окончания после нужного слова
(?i)\bвсе\b(?=[^\.,!?\b-\b]{0,15}(вало|дило|ейно|ело|ено|зано|ивое|ишь|кало|комо|лось|льно|мал|ойно|ояло|нее|нно станет|тите|ький|ясно)\b)
\bвсе\b опять же границы слова
[^\.,!?\b-\b] чтобы не искало если есть между словами точки, запятые, воск знаки, и тире
|комо|лось|льно| окончания слов для слова всё
)\b) чтобы искало только окончания

3 по поиску слов если есть и другие слова между ними
(?i)(?<=(бледне(ют|ли)|гор(ели|ят)|неме(ли|ют)|ожег|раздул|раст(ер|ир)|\bтер\b|тер(ла|ли)|(вы|рас)тер|щекотал)[^\.,!?\b-\b]{0,30})\bщеки\b
бледне(ют|ли)|гор(ели|ят) корень один но окончания разные
[^\.,!?\b-\b] чтобы не искало если есть между словами точки, запятые, воск знаки, и тире
{0,30} количество символов между словами
\bщеки\b ограничение слова

пы.сы. отдельное спасибо за подсказку с группами

Спасибо: 0 
ПрофильЦитата Ответить





Пост N: 13
Зарегистрирован: 29.03.13
Рейтинг: 0
ссылка на сообщение  Отправлено: 08.05.13 11:53. Заголовок: MoppoH пишет: На са..


MoppoH пишет:

 цитата:
На самом деле там все достаточно просто
1 если ищешь только по окончанию то регулярное выражение выглядит примерно так:
(?i)(?<=(а(ли|ть|ют)|(г|дн|ж|к|х|хн|ш|шн|щ)ие|дел|ены|жит|иеся|или|ить|кины|лил|лись|няли|рил|рыл|сал|тся|шую|ые|ыть)\b.{0,5})\bокна\b


Может я загоняюсь, но мне кажется всё совсем не так просто..
К примеру вышеприведённое выражение нежизнеспособно.. Поправьте меня, если я ошибаюсь.
Скрытый текст


В поисках рая.. Спасибо: 0 
ПрофильЦитата Ответить





Пост N: 70
Зарегистрирован: 22.08.11
Рейтинг: 1
ссылка на сообщение  Отправлено: 09.05.13 10:52. Заголовок: почему Вы так решили..


почему Вы так решили, будут заменены, разбив(али) окна, разбив(ают) все окна, это можно проверить в отладке проекта в реальном времени. группа (а(ли|ть|ют)) содержит в себе две группы и все окончания на али, ать, ают, будут найдены на растояние 5 букв и пробелов от слова окна
Скрытый текст



Спасибо: 0 
ПрофильЦитата Ответить
Разработчик




Пост N: 229
Зарегистрирован: 02.10.06
Откуда: РФ, Санкт-Петербург
Рейтинг: 0
ссылка на сообщение  Отправлено: 09.05.13 20:43. Заголовок: odinokiyklaus Это ба..


odinokiyklaus
Это баг в окне отладки. При редактировании нижнего поля (текст для проверки) в RegEx режиме автообновление не срабтывает, подсветка остается от предыдущего результата...
В следующей версии будет исправлено, пока же нужно вручную обновалять кнопкой со стрелкой.

Спасибо: 1 
ПрофильЦитата Ответить



Пост N: 1
Зарегистрирован: 09.10.06
Рейтинг: 0
ссылка на сообщение  Отправлено: 06.03.14 11:50. Заголовок: движок регулярных выражений


Не подскажете ли, уважаемые, существуют ли текстовые редакторы, поддерживающие все возможности синтаксиса внутри look-behind групп, как движок регулярных выражений, встроенный в .NET Framework?
Или использующие этот движок.
Сильно расширяются возможности автоматизации обработки текстов.

Спасибо: 0 
ПрофильЦитата Ответить
Разработчик




Пост N: 257
Зарегистрирован: 02.10.06
Откуда: РФ, Санкт-Петербург
Рейтинг: 0
ссылка на сообщение  Отправлено: 07.03.14 18:43. Заголовок: panalex Есть редакт..


panalex
Есть редактор DtPad. Написан под .NET 4.0, есть поиск / замена по рег. выражениям.

Спасибо: 0 
ПрофильЦитата Ответить



Пост N: 2
Зарегистрирован: 09.10.06
Рейтинг: 0
ссылка на сообщение  Отправлено: 10.03.14 12:49. Заголовок: Cminant Спасибо, буд..


Cminant
Спасибо, буду пробовать

Спасибо: 0 
ПрофильЦитата Ответить



Пост N: 166
Зарегистрирован: 09.04.11
Рейтинг: 0
ссылка на сообщение  Отправлено: 24.01.16 01:26. Заголовок: подскажите гуманитар..


подскажите гуманитарию, надо регулярное выражение, чтобы "*го гла<за", но с исключением "его глаза", - по всей моей практике, единственно необходимое регулярное выражение.

Спасибо: 0 
ПрофильЦитата Ответить
Разработчик




Пост N: 302
Зарегистрирован: 02.10.06
Откуда: РФ, Санкт-Петербург
Рейтинг: 0
ссылка на сообщение  Отправлено: 24.01.16 14:19. Заголовок: KOMODOR (?<! ..


KOMODOR
(?<!\bе)го глаза\b

как-то так

Спасибо: 0 
ПрофильЦитата Ответить





Пост N: 155
Зарегистрирован: 22.08.11
Рейтинг: 1
ссылка на сообщение  Отправлено: 24.01.16 15:25. Заголовок: #(?i)(?<=(\B..


#(?i)(?<=(\Bего|ого)\b[^\.,!?-]{0,2})\bглаза\b=глазаъ<
я пользуюсь таким, символ \B обозначает что это не конец слова, [^\.,!?-] обозначает что между его и глаза нет запятых и других знаков, \bглаза\b обозначает что будет искать только слово глаза, а не глазастых или Оглазар

но все равно бывают исключения, зрачок его гла<за, закрыл его глаза<

В поисках ада.. Спасибо: 0 
ПрофильЦитата Ответить



Пост N: 167
Зарегистрирован: 09.04.11
Рейтинг: 0
ссылка на сообщение  Отправлено: 25.01.16 20:09. Заголовок: MoppoH порылся в сущ..


MoppoH порылся в существующих словарях регулярных выражений на сайте - нашел несколько правил, которые перекрыли всю необходимую потребность, на все случаи жизни. Да тут, оказывается, все есть, только вручную копаться надо...

Спасибо: 0 
ПрофильЦитата Ответить



Пост N: 6
Зарегистрирован: 30.04.16
Откуда: ЛНР, краснодон
Рейтинг: 0
ссылка на сообщение  Отправлено: 02.08.16 10:27. Заголовок: MoppoH спасибо за от..


MoppoH спасибо за ответ по словам, и если возможно, прокомментируйте (объясните) выделенное, в частности квадратные скобки:

#(?i)(?<=((а|е|и|о|я)[бнтц]и(е|и|й|ю|я)|тви[еию]|\Bего|нием|ого|асть)\b[^\.,!?-]{0,2})\bбункера\b=бУнкера
#(?i)(?<=([вн]ое|ое|[вщ]ая|ая|инул)\b[^\.,!?-]{0,2})\bбытие\b=бытиё

И внекоторых рег. выражениях добавлен Ъ:

#(?i)(?<=(ая|(ж|к|н)ая|была)\b[^\.,!?-]{0,2})\bбелка\b=бе<лкаъ
#(?i)\bбелка\b(?=[^\.,!?-]{0,30}(колесе))=бе<лка

???


Спасибо: 0 
ПрофильЦитата Ответить



Пост N: 5
Зарегистрирован: 24.07.16
Рейтинг: 0
ссылка на сообщение  Отправлено: 02.08.16 22:09. Заголовок: в квадратных скобках..


в квадратных скобках указываются одинарные буквы, при нахождение которых срабатывает рег выражение
в круглых скобках можно указать сочетание букв, при нахождение которых сработает рег выражение
то есть (а|е|и|о|я)[бнтц]и(е|и|й|ю|я) найдет ение, ация
а вот (тут можно написать что именно надо найди до|прис)[бнтц]и(е|и|й|ю|я) найдет присбию, присния

в некоторых случая слова заканчивающиеся на А даже если стоит ударение все равно читает не правильно, а при добавление Ъ уже читает правильно
видимо баг движка

Спасибо: 0 
ПрофильЦитата Ответить





Пост N: 75
Зарегистрирован: 29.03.13
Откуда: Санкт-Петербург
Рейтинг: 0
ссылка на сообщение  Отправлено: 02.08.16 23:05. Заголовок: Лично для меня хорош..


Лично для меня хорошим учебником была статья в Википедии и практика в написании выражений.
Я отключил все словари, завел один, включил его и в нем ужен писал правила через notepad++ и в окне отладки словарей смотрел на получившиеся результаты.

[бнтц] - один любой из символов из этого перечня [перечень одиночных символов]
[бнтцоа]{1,2} {1,2}-квантификатор - означает один или два символа из перечня [] - пример цо ба ц б - все подходит
{1,} - один и более (с правой стороны внутри после запятой нет ограничения)
[бнтцоа]+ знак плюс после перечня - не менее одного символа из перечня
[бнтцоа]? знак вопроса после перечня - ноль или один символ из перечня
[^\.,!?-] - любой символ кроме . (точка) , ! ? -
. - знак точки означает вообще любой один символ.
Чтобы написать именно точку её экранируют \. это означает точку
(она|оно|они) - любой вариант в скобках сработает. знак | - означает или
\b - граница слова то есть \bвсе\b - найдет только слово все, а слово всех проигнорирует
\В - середина слова

Это условия поиска по типу если перед словом1 стоит слово2 или слово3, то слово1 будет найдено, а иначе не найдет.
(?<=(слово2 |слово3))слово1
=слово<1 - заменяет найденное слово1 на слово<1 с ударением
пример
(?<=(слово2 |слово3 ))слово1=слово<1 - найдет в выражениях "слово2 слово1" или "слово3 слово1" слово1 и заменит его на слово<1

Не стесняйся эксперементировать и спрашивать! Удачи!


В поисках рая.. Спасибо: 0 
ПрофильЦитата Ответить



Пост N: 10
Зарегистрирован: 30.04.16
Откуда: ЛНР, краснодон
Рейтинг: 0
ссылка на сообщение  Отправлено: 03.08.16 00:53. Заголовок: Не стесняйся эксперементировать и спрашивать!


Спасибо.

Скрытый текст


добавил к этому:

#(?i)(?<=(2|блеск|бутыл[ко]|глоток|глотков|запас|кружк|литр|напи(л|ться)|пленк|стакан)[^\.,!?-]{0,30})\bводы\b=воды<

получилось:

#(?i)(?<=(2|блеск|бутыл[ко]|глот(кам|ками|ков|ок)|запас|капельками|капл(ей|ю|я|ями)|кран|круж(ек|ка|ке|ку)|литр|напи(лись|лся|ться)|насчет|отсутстви(ем|и|ю|я)|немало|пены|пленк|полумра(ке|ку)|полусфера|попросил|пригоршнями|продовольствия|продовольствия\,|просто|след|стакан|травы|требова(л|ла|ли|ло|лось)|чашк(а|е|и|ой|у)|челове(ка|ком|ку))[^\.,!?-]{0,30})\bводы\b=водЫ
к
Возможно ли прикрутить запятую , чтоб не дублировать слово.
И тире заодно?

Спасибо: 0 
ПрофильЦитата Ответить





Пост N: 76
Зарегистрирован: 29.03.13
Откуда: Санкт-Петербург
Рейтинг: 0
ссылка на сообщение  Отправлено: 03.08.16 09:55. Заголовок: Речь идёт о Николае?..


Речь идёт о Николае?
|продовольствия\,| - запятую экранировать не надо - это не оператор типа точки, а просто один из символов.

Прикрутить запятую можно, как напишете так и будет искать

2| - по моему бессмысленный оператор. "2 капли воды" что-ли? может всё-таки так "две капли воды"

(ек|ка|ке|ку) - оператор скобки выделяет память для обработки, чтобы к этому фрагменту можно было обратиться позднее ($1 - после знака равно стоит обращение к скобкам 1 и т.п.) оператор перечня памяти не выделяет. я бы написал лучше так - [каеу]{2} и добавил бы еще окончаний: кой ками ках. В итоге получилось бы [каеойумих]{2,4}

wasyaka пишет:

 цитата:
Возможно ли прикрутить запятую , чтоб не дублировать слово.
И тире заодно?


не понял вопроса.
Кажется догадался. Это |продовольствия\,| можно так написать |продовольствия[,]?|
[,]? - ноль или один раз из перечня

В поисках рая.. Спасибо: 0 
ПрофильЦитата Ответить





Пост N: 77
Зарегистрирован: 29.03.13
Откуда: Санкт-Петербург
Рейтинг: 0
ссылка на сообщение  Отправлено: 03.08.16 12:12. Заголовок: wasyaka пишет: И вн..


wasyaka пишет:

 цитата:
И внекоторых рег. выражениях добавлен Ъ:


Лично я в своих правилах Ъ знак добавляю за тем, чтобы последующие выражения не смогли второй раз обработать искомое слово.

Тут требуется пояснение. В KoobAudio реализованая великолепная задумка (подробнее смотри справку) - любые выражения, расположенные в словарях в основной папке (то есть не в папках 1 и 2), слово которое уже было обработано проигнорируют. Однако, обработка уже обработанного слова сможет и будет сделана в папке постобработки (папке 2). Чтобы этого не было сделано лично я вставляю перед знаком ударения Ъ знак.

То есть делаю выражения такого типа

#(?i)(?<=\b((без|возле|мимо|выше|ниже|дальше|ближе|для|до|из|оба|от|с|у|вместо|вдоль|вглубь|внутр[ьи]|снаружи|вне|вокруг|около|кроме|глубине|посреди|напротив|против|всего|из([ -]за|[ -]под)?|нет|ни|об[ае]|дв[ае]|три|четыре|одной|другой|первой|второй|следующей)\s(его|е[её]|их|моей|твоей|своей|нашей|моего|твоего|своего|нашего|того|этого|сего|той)?)\b[^\.,!?-]{0,1})\bадреса\b=аъ<дреса

В поисках рая.. Спасибо: 0 
ПрофильЦитата Ответить



Пост N: 11
Зарегистрирован: 30.04.16
Откуда: ЛНР, краснодон
Рейтинг: 0
ссылка на сообщение  Отправлено: 06.08.16 15:12. Заголовок: odinokiyklaus Большо..


odinokiyklaus
Большое спасибо.
Вопрос:

...|год|давлени[емюя]{1,2}....{0,30})\bвойны\b=войнЫ
сработало:
давлением войнЫ, -- годы войнЫ; годом войнЫ
удалил квадратно-фигурные скобки, оставил:
|давлени| -- результат тотже.
т.е в скобках только заданные окончания, а если без них, то слово получается"безконечным"?
В смысле сработает на непонятно что(годные и т.д.?


Спасибо: 0 
ПрофильЦитата Ответить





Пост N: 78
Зарегистрирован: 29.03.13
Откуда: Санкт-Петербург
Рейтинг: 0
ссылка на сообщение  Отправлено: 06.08.16 15:26. Заголовок: Можно всё увидеть вы..


Можно всё увидеть выражение?

В поисках рая.. Спасибо: 0 
ПрофильЦитата Ответить



Пост N: 12
Зарегистрирован: 30.04.16
Откуда: ЛНР, краснодон
Рейтинг: 0
ссылка на сообщение  Отправлено: 06.08.16 16:16. Заголовок: #(?i)(?<=\..




#(?i)(?<=\b(алтар|\bдве\b|близос[итью]{2,3}|будто|вопрос|год|давлени|дат[аеуой]{1,2}|демон|день|дн|задач|зако[ануыомих]{1,}|истори[ийюя]|командор|круговорот|мастер|машин|месяц|навык|начал|недел|окончани|отголоск[иахом]{1,2}|перво[гйо]{2}|пепл|период|планетарий|после|правд|реали[ий]|середин|сердц|судьб[аыойюе]{1,2}|\bтри\b|тягот|тяжест|хо[дуеы]{1,2}|утечк|ча[сыамов]{1,2,3|}хотел|)[^\.,!?-]{0,30})\bвойны\b=войнЫ

Спасибо: 0 
ПрофильЦитата Ответить





Пост N: 79
Зарегистрирован: 29.03.13
Откуда: Санкт-Петербург
Рейтинг: 0
ссылка на сообщение  Отправлено: 06.08.16 20:40. Заголовок: Понятно. Искомое выр..


Понятно. Искомое выражение у вас такое
wasyaka пишет:

 цитата:
#(?i)(?<=\b(алтар|\bдве\b|близос[итью]{2,3}|будто|вопрос|год|давлени|дат[аеуой]{1,2}|демон|день|дн|задач|зако[ануыомих]{1,}|истори[ийюя]|командор|круговорот|мастер|машин|месяц|навык|начал|недел|окончани|отголоск[иахом]{1,2}|перво[гйо]{2}|пепл|период|планетарий|после|правд|реали[ий]|середин|сердц|судьб[аыойюе]{1,2}|\bтри\b|тягот|тяжест|хо[дуеы]{1,2}|утечк|ча[сыамов]{1,2,3|}хотел|)[^\.,!?-]{0,30})\bвойны\b=войнЫ



#(?i)(?<=\b(искомое выражение)[любые символы кроме . , ! ? -]{0,30})\bвойны\b=войнЫ
\b(искомое выражение) - искомое выражение начинается с того что перечислено в скобках и далее следом за искомым выражением идут любые символы, кроме . , ! ? - (то есть буквы, цифры, пробелы, и т.д) в количестве от нуля до 30 штук.

В этот промежуток [^\.,!?-]{0,30} и укладываются все ваши окончания которые могут встречаться.
Таким образом может быть обработано не только выражение близос[итью]{2,3} - близости близостью, но и "близос"[тя] + "ми" или "близос"[тя] +"тратататата" и т.д, потому что "ми" и "тратататата" полностью укладываются в диапазон идущий следом - [^\.,!?-]{0,30}
Скрытый текст


Чтобы ограничить искомое выражение с двух сторон следует использовать \b(искомое выражение)\b

\bвсе - найдет слово всех, всеми всеобщий и т.д
\bвсе\b - найдет толюко слово все

То есть если вы напишите вот такое выражение #(?i)(?<=\b(искомое выражение)\b[любые символы кроме . , ! ? -]{0,30})\bвойны\b=войнЫ
то у вас будет находить только выражения "близости войны" "близостью тратата войны" и т.д.


В поисках рая.. Спасибо: 0 
ПрофильЦитата Ответить





Пост N: 80
Зарегистрирован: 29.03.13
Откуда: Санкт-Петербург
Рейтинг: 0
ссылка на сообщение  Отправлено: 06.08.16 21:49. Заголовок: Заметил ошибки ..


Заметил ошибки
|утечк|ча[сыамов]{1,2,3|}хотел|)

|утечк|ча[сыамов]{1,2,3|}хотел|)

Так писать нельзя. Можно так {1,2} -"от одного до двух", {1,3} "от одного до трёх". Но не так - {1,2,3}
Внутри квантификатора {} симол | не допускается. Можно только одну или дву цифры и запятую - {2} {,6} {5,} {5,10}.
хотел|) посли хотел идет | и правая скобка. Раз между ними нет символа - то значит будет обрабатываться "пустой" - читай любой симсол.

Такие выраджения типа этого (хотел|) вообще недопустимы
То есть пример
выражение #(?i)(?<=\b(хотел|)\b[^\.,!?-]{0,30})\bвойны\b=войны
найдет
не только хотел войны но и хотелтратата войны
так как обработает пустой симовол |) в количестве от нуля до 30-ти раз.
Скрытый текст


Вот как правильно отработает
Скрытый текст



В поисках рая.. Спасибо: 0 
ПрофильЦитата Ответить



Пост N: 13
Зарегистрирован: 30.04.16
Откуда: ЛНР, краснодон
Рейтинг: 0
ссылка на сообщение  Отправлено: 22.08.16 22:32. Заголовок: odinokiyklaus Спасиб..


odinokiyklaus
Спасибо за ученье.


Спасибо: 0 
ПрофильЦитата Ответить



Пост N: 14
Зарегистрирован: 30.04.16
Откуда: ЛНР, краснодон
Рейтинг: 0
ссылка на сообщение  Отправлено: 22.08.16 23:04. Заголовок: odinokiyklaus Спасиб..


odinokiyklaus
Спасибо за ученье.

Если интересно:
Это .chisla.rex из балаболки Скрытый текст

Работает эффективней чем "числительные".
если сможете и интересно - алгоритм замен .рекс в дик.



Спасибо: 0 
ПрофильЦитата Ответить





Пост N: 85
Зарегистрирован: 29.03.13
Откуда: Санкт-Петербург
Рейтинг: 0
ссылка на сообщение  Отправлено: 25.08.16 11:12. Заголовок: Перевел ваш словарь ..


Перевел ваш словарь из rex в dic

Алгоритм
1. Замена @ (в Балаболке это символ НЕ игнорировать регистр) на выражение (?-i) (В рег. выр. НЕ игнорировать регистр так описывается)

2. Замена # (в Балаболке это комментарии) на // - (в KoobAudio это комментарии)

3. Замена \r\n на выражение \r\n# - все рег. выражения в KoobAudio должны начинаться с символа #

4. Поскольку в оригинальном словаре (строки 521-525, 578) в рег. выражениях встречается выражение :$21: и тому подобное, то возникает ошибка, и такие правила не обрабатываются. Поясню, в рег. выражении после знака равно "=" стоит выражение на которое меняется искомое выражение. После символа $ должна стоять цифра от 1 до 9 (это ссылка на скобку (группу) в искомом выражении. (Пример #(\d)(\d)=$1 - здесь будет напечатано только первая цифра, обрамлённая первой группой скобок) . Если после символа $ встретится две подряд идущие цифры, то такое выражение будет проигнорировано и не обработано (#\b([0]?1)<t([a-z])(\d)>=<$1:$21:t$3> - в выражении перед = нет 21 группы). Чтобы правила в строках 521-525, 578 были обработаны правильно я разделил в выражении :$21: символы $2 и 1 знаком @. После корректной отработки этих выражений символ @ удаляется. Поэтому в исправленном словаре, добавлены два дополнительных правила #:([a-z])@(\d):=:$1$2: (строки 531 и 580).

Ссылки на словари (там же сравнение результатов обработки старого и нового словаря) - https://yadi.sk/d/EjYyUpK4uUPDo
Пользуйтесь на здоровье!

В поисках рая.. Спасибо: 0 
ПрофильЦитата Ответить





Пост N: 86
Зарегистрирован: 29.03.13
Откуда: Санкт-Петербург
Рейтинг: 0
ссылка на сообщение  Отправлено: 25.08.16 11:17. Заголовок: Забыл добавить. Чтоб..


Забыл добавить. Чтобы числительные работали корректно, этот словарь должен быть помещён только в паку 1 (папка предварительной обработки). В общей папке (где по умолчанию лежит словарь Числительные.dic) новый словарь не будет правильно работать.
Словарь Числительные_KoobAudio можно отключить, а можно и оставить.

P.S. Чтение чисел стало значительно лучше (использую оба словаря), но время обработки заметно увеличилось. Но пока это не критично.

В поисках рая.. Спасибо: 0 
ПрофильЦитата Ответить



Пост N: 15
Зарегистрирован: 30.04.16
Откуда: ЛНР, краснодон
Рейтинг: 0
ссылка на сообщение  Отправлено: 30.08.16 12:03. Заголовок: odinokiyklaus Ещё р..



odinokiyklaus
Ещё раз(неоднократно) спасибо.
Вопросы:(ко всем пользователям)
1.Возможно ли прописать(рег), чтобы после названия книги, главы и т.д. ставилась точка? Чтоб читалось раздельно?

 цитата:
Владимир Стрельников

Ссыльнопоселенец



2.Возможно ли в KooBAudio применить теги для смены голоса(прочтение сносок, антоннация ит.д.)

 цитата:
<VOICE REQUIRED="NAME=IVONA 2 Tatyana OEM"> (текст) </VOICE> (это Балаболка и MP3book2005)





Спасибо: 0 
ПрофильЦитата Ответить



Пост N: 8
Зарегистрирован: 24.07.16
Рейтинг: 0
ссылка на сообщение  Отправлено: 30.08.16 23:09. Заголовок: wasyaka пишет: 1.Во..


wasyaka пишет:

 цитата:
1.Возможно ли прописать(рег), чтобы после названия книги, главы и т.д. ставилась точка? Чтоб читалось раздельно?


(?m)([А-я])$=$1.


Спасибо: 0 
ПрофильЦитата Ответить



Пост N: 17
Зарегистрирован: 30.04.16
Откуда: ЛНР, краснодон
Рейтинг: 0
ссылка на сообщение  Отправлено: 02.09.16 21:52. Заголовок: MoppoH2 пишет: wasy..


MoppoH2 пишет:

 цитата:
wasyaka пишет:

 цитата:
1.Возможно ли прописать(рег), чтобы после названия книги, главы и т.д. ставилась точка? Чтоб читалось раздельно?


(?m)([А-я])$=$1.



Не работает.

Для балаболки в rex методом тыка подобрал ([A-Za-zА-яЁё])(\r)=$1.


Спасибо: 0 
ПрофильЦитата Ответить





Пост N: 88
Зарегистрирован: 29.03.13
Откуда: Санкт-Петербург
Рейтинг: 0
ссылка на сообщение  Отправлено: 06.09.16 13:51. Заголовок: wasyaka пишет: 2.Во..


wasyaka пишет:

 цитата:
2.Возможно ли в KooBAudio применить теги для смены голоса(прочтение сносок, антоннация ит.д.)

 цитата:
<VOICE REQUIRED="NAME=IVONA 2 Tatyana OEM"> (текст) </VOICE> (это Балаболка и MP3book2005)



Режим Билингво пробовали? Может там это уже реализовано? (сразу скажу, я не пробовал).

Скрытый текст



В поисках рая.. Спасибо: 0 
ПрофильЦитата Ответить



Пост N: 18
Зарегистрирован: 30.04.16
Откуда: ЛНР, краснодон
Рейтинг: 0
ссылка на сообщение  Отправлено: 16.09.16 00:43. Заголовок: odinokiyklaus пишет:..


odinokiyklaus пишет:

 цитата:
ежим Билингво пробовали? Может там это уже реализовано? (сразу скажу, я не пробовал).


Билингво - это чтение латиницы.
в словаре chisla нашел ошибку:(в оригинале 167)
(\bв\b)\s((\bначале\b|\bконце\b|\bсередине\b|(\bпервой\b|\bвторой\b)\s\bполовине\b)\s)(\d+)<рим\.ч\.>\s(\bв\.|\bвека\b)=$1 $2$5<td6> века(<td6>заменить на <td2>)(ом на ого)
Попытался улучшить навроде 40-41х и 40-41-х (Игнор первой цифры)

#(\d+)(\-)(\d+)([A-Za-zА-яЁё]+)=$1$4 $3$4
#(\d+)(\-)(\d+)(\-)([A-Za-zА-яЁё]+)=$1$4$5 $3$4$5

Срабатывает, но длинный пробел(2или3) и ]+) - его роль?
иСкрытый текст

Навроде контрольной в школе...


Спасибо: 0 
ПрофильЦитата Ответить





Пост N: 89
Зарегистрирован: 29.03.13
Откуда: Санкт-Петербург
Рейтинг: 0
ссылка на сообщение  Отправлено: 20.09.16 12:06. Заголовок: wasyaka пишет: в сл..


wasyaka пишет:

 цитата:
в словаре chisla нашел ошибку:(в оригинале 167)
(\bв\b)\s((\bначале\b|\bконце\b|\bсередине\b|(\bпервой\b|\bвторой\b)\s\bполовине\b)\s)(\d+)<рим\.ч\.>\s(\bв\.|\bвека\b)=$1 $2$5<td6> века(<td6>заменить на <td2>)(ом на ого)


Я римскими числами из этого словаря вообще не пользуюсь. Меня напрягает, что из-за этих правил обработки римских чисел каждый введёный символ обрабатывается. Для себя я сделал по другому - перед словарем обработки чисел задал свои правила перевода римских чисел в арабские. И стало всё гораздо лучше.

Скрытый текст


Кроме того, из-за этих "римских правил" обработка выражений типа при И. Ю. Петре VIII I.B.M. Company становится совсем безобразным. Я для себя решил эту проблему и теперь это тестовое выражение обрабатывается корректно.
Скрытый текст



В поисках рая.. Спасибо: 0 
ПрофильЦитата Ответить





Пост N: 90
Зарегистрирован: 29.03.13
Откуда: Санкт-Петербург
Рейтинг: 0
ссылка на сообщение  Отправлено: 20.09.16 12:31. Заголовок: wasyaka пишет: Попы..


wasyaka пишет:

 цитата:
Попытался улучшить навроде 40-41х и 40-41-х (Игнор первой цифры)

#(\d+)(\-)(\d+)([A-Za-zА-яЁё]+)=$1$4 $3$4
#(\d+)(\-)(\d+)(\-)([A-Za-zА-яЁё]+)=$1$4$5 $3$4$5



В этом словаре это реализуется по-другому
Нужно в словаре найти этот блок правил

Скрытый текст


и вставить перед ним дополнительный блок правил

Скрытый текст


wasyaka пишет:

 цитата:
Срабатывает, но длинный пробел(2или3) и ]+) - его роль?



Длины пробел должен быть еще в самом начале обработки любых правил заменён коротким. Проверьте наличие правила в словаре чисел. Если его нет, то добавьте в самое его начало.

#\—|\–=-

Кстати эти тире — или – или - вовсе не обязательно экранировать (т.е. писать так \-). Эти знаки не являются спецсимволами. Так что если напишите просто правило

#—|–=-

то оно тоже сработает

wasyaka пишет:

 цитата:
[A-Za-zА-яЁё]+



Символы в квадратных скобках без знака (квантификатора) "+" или "*" - означает любой один! из перечисленных символов.
Знак "+" после [] т.е. []+ - тоже самое что и []{1,} - то есть любой из символов в количестве больше одного (один или более символов).
"*" - то же только "ноль или более символов"
Таким образом выражение "[A-Za-zА-яЁё]+" это любые символы из перечня, с учётом регистра букв, в количестве более одного.




В поисках рая.. Спасибо: 0 
ПрофильЦитата Ответить





Пост N: 91
Зарегистрирован: 29.03.13
Откуда: Санкт-Петербург
Рейтинг: 0
ссылка на сообщение  Отправлено: 20.09.16 12:37. Заголовок: wasyaka пишет: Били..


wasyaka пишет:

 цитата:
Билингво - это чтение латиницы.


Как я понял это чтение диалогов двумя голосами. Отличный режим для оживления Николая. Можно настроить тембр, скорость чтения в диалогах.
ТО есть, к примеру, первый голос читает выше и быстрее (вопрошает), а второй басовитее и медленнее (отвечает раздумывая не поставленный вопрос).

В поисках рая.. Спасибо: 0 
ПрофильЦитата Ответить





Пост N: 92
Зарегистрирован: 29.03.13
Откуда: Санкт-Петербург
Рейтинг: 0
ссылка на сообщение  Отправлено: 20.09.16 14:41. Заголовок: wasyaka пишет: Навр..


wasyaka пишет:

 цитата:
Навроде контрольной в школе...



По идее, это правила для обработки омографов - слов, в которых ударение ставится в зависимости от контекста или написания заглавной буквы.
Здесь надо после большой гласной буквы "О" или "Ю" поставить знак ударения, чтобы получилось типа такого:

#(?-i)([а-я]) \bКолю\b=$1 Ко<лю
#(?-i)([а-я]) \bколю\b=$1 колю<
#(?-i)\bКолю\b=колю

В результате получится

позвал Колю - будет "позвал Ко<лю"
дрова колю - будет "дрова колю<"
Колю - будет колю - почему то с маленькой буквы. Зачем не пойму.


В поисках рая.. Спасибо: 0 
ПрофильЦитата Ответить



Пост N: 19
Зарегистрирован: 30.04.16
Откуда: ЛНР, краснодон
Рейтинг: 0
ссылка на сообщение  Отправлено: 20.09.16 17:11. Заголовок: odinokiyklaus пишет:..


odinokiyklaus пишет:

 цитата:
Здесь надо после большой гласной буквы "О" или "Ю" поставить знак ударения, чтобы получилось типа такого:

#(?-i)([а-я]) \bКолю\b=$1 Ко<лю
#(?-i)([а-я]) \bколю\b=$1 колю<
#(?-i)\bКолю\b=колю

В результате получится

позвал Колю - будет "позвал Ко<лю"
дрова колю - будет "дрова колю<"
Колю - будет колю - почему то с маленькой буквы. Зачем не пойму.



Голос Максим
click here

Ударение заглавной буквой(гласной)
Смысл:
Если начальное слово строки соответственно написанное с заглавной омограф вручную или словарём. если в тексте то: Колю побили=КОлю побили; колю лёд=колЮ лёд; - омограф проставляется автоматом, а смысл вопроса : Правильно составлено рег выражение?

ну и по числам:
строка 340#(?i)(\bглава\b|\bчасть\b|\bкнига\b|\bсерия\b)\s(\d+)([^\-\d+])?=$1 $2-я$3...
добавил (?i) иначе если Глава(с заглавной) не срабатывало)
добавил стр. 372
Скрытый текст

В словарь corector у вас clean добавил(это всё для чисел)
Скрытый текст


И консультация: словарь е=ё (балаболка) очень громозкий, ели его в основную группу - конфликт(вздёрнул брОви).
В папке 1 - тормоз,разделил словари на две группы 1-я (папка 1 + е=ё + все=всё + сокращения + транслит)) 2-Я омографы и обрабатываю в два прохода. - альтернатива?

В принципе(в основном) голос Speech2Go ( 247_S2G_Maxim и 248_S2G_Tatyana) адаптировал под KooBAudio
Ели интересно поделюсь.
Образец
https://yadi.sk/d/FrjLlH-gvSFd2



Спасибо: 0 
ПрофильЦитата Ответить



Пост N: 10
Зарегистрирован: 24.07.16
Рейтинг: 0
ссылка на сообщение  Отправлено: 20.09.16 18:42. Заголовок: да Максим и Татьяна ..


да Максим и Татьяна имеют более человеческое произношение, но эти движки читают без интонаций, без знаков препинания или я просто привык к Николаю
Образец
https://yadi.sk/d/aKJNxneXvSXz3


Спасибо: 0 
ПрофильЦитата Ответить





Пост N: 93
Зарегистрирован: 29.03.13
Откуда: Санкт-Петербург
Рейтинг: 0
ссылка на сообщение  Отправлено: 25.09.16 23:45. Заголовок: Всем привет! Тем ком..


Всем привет! Тем кому удобно редактировать рег. выражения в замечательной программе Notepad++, рекомендую использовать настройки, которые эффективно подсвечивают их синтаксис.
Скрытый текст


Если установка программы Notepad++ производилась по умолчанию, то её настройки будут располагаться по пути (для Windows 7):
c:\Users\ИМЯ\AppData\Roaming\Notepad++\

В данную папку поместите файл userDefineLang.xml, а в папку themes - KoobAudio_Theme.xml
После этого следует перейти по пути Опции->Определение стилей-> и далее выбрать тему KoobAudio_Theme
Скрытый текст


Далее выбрать Стиль синтаксиса KoobAudio
Скрытый текст



В поисках рая.. Спасибо: 0 
ПрофильЦитата Ответить



Пост N: 20
Зарегистрирован: 30.04.16
Откуда: ЛНР, краснодон
Рейтинг: 0
ссылка на сообщение  Отправлено: 30.09.16 21:37. Заголовок: Привет! Вопрос: Фра..


Привет!
Вопрос:
Фраза:Кукловод #4Новый фантастический боевик (Эксмо)
Приключения Кукловода продолжаются!

рег #([A-Za-zА-яЁё])\s(#)(\d)=$1. книга $3
Получилось:
Кукловод. книга четвёртая ...Новый фантастический боевик (Эксмо)
Приключения Кукловода продолжаются!

Возможно ли, чтобы после троеточия фраза начиналась с новой строки?


Спасибо: 0 
ПрофильЦитата Ответить





Пост N: 94
Зарегистрирован: 29.03.13
Откуда: Санкт-Петербург
Рейтинг: 0
ссылка на сообщение  Отправлено: 01.10.16 17:08. Заголовок: wasyaka пишет: Возм..


wasyaka пишет:

 цитата:
Возможно ли, чтобы после троеточия фраза начиналась с новой строки?



Конечно! В любом месте можно сделать перенос строки. Для этого нужно после знака равно вставать последовательность символов \r\n, которые программа опознает как перенос строки.

К примеру:
#([A-Za-zА-яЁё])\s(#)(\d)=$1. книга $3 - заменить на
#([A-Za-zА-яЁё])\s(#)(\d)=$1. \r\nкнига $3

В этом случае книга $3 будет перенесено на следующую строку.

\r - перевод каретки в начало строки на которой вы находитесь
\n - переход на новую строку с текущей строки



В поисках рая.. Спасибо: 0 
ПрофильЦитата Ответить



Пост N: 21
Зарегистрирован: 30.04.16
Откуда: ЛНР, краснодон
Рейтинг: 0
ссылка на сообщение  Отправлено: 02.10.16 20:34. Заголовок: odinokiyklaus пишет:..


odinokiyklaus пишет:

 цитата:
Конечно! В любом месте можно сделать перенос строки. Для этого нужно после знака равно вставать последовательность символов \r\n, которые программа опознает как перенос строки.



СПАСИБО!

Ну и вопрос:
Сноска:[2 - Колония на Тобаго не оказала сопротивления Бриджесу и была полностью разграблена, правда, без кровопролития.].
надо заменить
] на </VOICE>
] = </VOICE> срабатывает
[2 - Колония на Тобаго не оказала сопротивления Бриджесу и была полностью разграблена, правда, без кровопролития. на
<VOICE REQUIRED="NAME=IVONA 2 Tatyana OEM"> - текст сноски с учётом изменяемым номером ссылки?





Спасибо: 0 
ПрофильЦитата Ответить





Пост N: 95
Зарегистрирован: 29.03.13
Откуда: Санкт-Петербург
Рейтинг: 0
ссылка на сообщение  Отправлено: 02.10.16 21:01. Заголовок: wasyaka пишет: ] = ..


wasyaka пишет:

 цитата:

[2 - Колония на Тобаго не оказала сопротивления Бриджесу и была полностью разграблена, правда, без кровопролития. на
<VOICE REQUIRED="NAME=IVONA 2 Tatyana OEM"> - текст сноски с учётом изменяемым номером ссылки?



Вообще не понял.

В поисках рая.. Спасибо: 0 
ПрофильЦитата Ответить



Пост N: 22
Зарегистрирован: 30.04.16
Откуда: ЛНР, краснодон
Рейтинг: 0
ссылка на сообщение  Отправлено: 03.10.16 20:22. Заголовок: odinokiyklaus пишет:..


odinokiyklaus пишет:

 цитата:
Вообще не понял.



Это для переключения на другой голос

[2 - Колония на Тобаго не оказала сопротивления Бриджесу и была полностью разграблена, правда, без кровопролития.].

прочитает Максим. а при таком:

<VOICE REQUIRED="NAME=IVONA 2 Tatyana OEM"> 2 - Колония на Тобаго не оказала сопротивления Бриджесу и была полностью разграблена, правда, без кровопролития. </VOICE>.

Прочитает Татьяна.
С помощью опции заменить(это в Балаболке) квадратные скобки меняются на теги, цифру(ы) приходится удалять вручную...

Звучить так:

https://yadi.sk/d/wRXuNST2w9g8T



Спасибо: 0 
ПрофильЦитата Ответить





Пост N: 96
Зарегистрирован: 29.03.13
Откуда: Санкт-Петербург
Рейтинг: 0
ссылка на сообщение  Отправлено: 04.10.16 09:33. Заголовок: wasyaka пишет: Проч..


wasyaka пишет:

 цитата:
Прочитает Татьяна.
С помощью опции заменить(это в Балаболке) квадратные скобки меняются на теги, цифру(ы) приходится удалять вручную...



Если нужно удалить только цифру, то поместите это правило куда-нибудь в предобработку. Оно удалит в выражении "[2 - Колония" это - "2 - ".
В результате чего вместо этого "[2 - Колония" должно остаться "[Колония"

#[\d+\s-\s(?=[А-ЯЁа-яё]+)=[



В поисках рая.. Спасибо: 0 
ПрофильЦитата Ответить



Пост N: 23
Зарегистрирован: 30.04.16
Откуда: ЛНР, краснодон
Рейтинг: 0
ссылка на сообщение  Отправлено: 29.11.16 20:33. Заголовок: Привет! Камрады. Пыт..


Привет! Камрады.
Пытался зайти с ноута - Так всё секретно... - несмог побороть защиту от пользователей...
Печально...
Но... (после многочисленных тестирований) - лучшая прога для работы (начальной подготовки с словарям).
Но, читалка, -попирание прав человека...
Несколько вопросов:
|!вырва|- для чего !знак?
[\S]- ???

Спасибо: 0 
ПрофильЦитата Ответить



Пост N: 13
Зарегистрирован: 24.07.16
Рейтинг: 0
ссылка на сообщение  Отправлено: 30.11.16 17:51. Заголовок: wasyaka пишет: ..


wasyaka пишет:

 цитата:
|!вырва|- для чего !знак?


чтобы не добавить еще раз это сочетание в рег выражение, так как оно встречается с обоими омографами, ! не дает искать это словосочетание, знак ! не принципиально можно было бы использовать любой знак
wasyaka пишет:

 цитата:
[\S]- ???


ищет только в соседнем слове совпадение

Спасибо: 0 
ПрофильЦитата Ответить



Пост N: 24
Зарегистрирован: 30.04.16
Откуда: ЛНР, краснодон
Рейтинг: 0
ссылка на сообщение  Отправлено: 30.11.16 18:31. Заголовок: MoppoH2 пишет: чтоб..


MoppoH2 пишет:

 цитата:
чтобы не добавить еще раз это сочетание в рег выражение, так как оно встречается с обоими омографами, ! не дает искать это словосочетание, знак ! не принципиально можно было бы использовать любой знак



Спасибо.
Эксперементировал.
Перегонял в rex-на ! указывало ошибку и вся строка не работала.

Спасибо: 0 
ПрофильЦитата Ответить



Пост N: 26
Зарегистрирован: 30.04.16
Откуда: ЛНР, краснодон
Рейтинг: 0
ссылка на сообщение  Отправлено: 05.02.17 13:15. Заголовок: odinokiyklaus пишет:..


odinokiyklaus пишет:

 цитата:
Всем привет! Тем кому удобно редактировать рег. выражения в замечательной программе Notepad++, рекомендую использовать настройки, которые эффективно подсвечивают их синтаксис.



Привет!
А возможно прописать указание на ошибки(к имеющемуся \ вместо |)?
И также в окне программы, где только нехватка или излишек скобок...
А то приходится с помощью найти-заменить, что не всегда вовремя вспоминается...
Ошибки:
||
пробел |
| пробел
\b\b
(|
|)
Или как то прописать, чтоб автоматом?

Спасибо: 0 
ПрофильЦитата Ответить





Пост N: 106
Зарегистрирован: 29.03.13
Откуда: Санкт-Петербург
Рейтинг: 0
ссылка на сообщение  Отправлено: 06.02.17 23:11. Заголовок: wasyaka пишет: Или ..


wasyaka пишет:

 цитата:
Или как то прописать, чтоб автоматом?


Не нашёл способа реализовать проверку на ощибки. Сам пользуюсь сначала визуальной проверкой правил и после проврекой в отлпдке словарей.

Хотя.. есть же Spell Chеcker.. Вот бы его заюзать... подумаю

В поисках рая.. Спасибо: 0 
ПрофильЦитата Ответить





Пост N: 107
Зарегистрирован: 29.03.13
Откуда: Санкт-Петербург
Рейтинг: 0
ссылка на сообщение  Отправлено: 09.02.17 15:44. Заголовок: В общем пока ничего ..


В общем пока ничего толкового не придумал как отмечать те ошибки, о которых вы говорили.

Единственно придумал - перенастроил синтаксис правил для Notepad++

Теперь в случае незакрытой скобки это становится видно сразу. Я так у себя уже несколько ошибок поймал.


Скрытый текст


Как видно из картинки правило с ошибкой окрасолось в зелёный цвет после знака равенства.

Синтаксические правила можно скачать по ссылке.

Справку по Notepad++ можно посмореть здесь

В поисках рая.. Спасибо: 0 
ПрофильЦитата Ответить



Пост N: 28
Зарегистрирован: 30.04.16
Откуда: ЛНР, краснодон
Рейтинг: 0
ссылка на сообщение  Отправлено: 09.02.17 19:09. Заголовок: odinokiyklaus пишет:..


odinokiyklaus пишет:

 цитата:
В общем пока



Спасибо, не думал что такая головоломка...

Спасибо: 0 
ПрофильЦитата Ответить
Ответов - 57 , стр: 1 2 3 All [только новые]
Ответ:
1 2 3 4 5 6 7 8 9
большой шрифт малый шрифт надстрочный подстрочный заголовок большой заголовок видео с youtube.com картинка из интернета картинка с компьютера ссылка файл с компьютера русская клавиатура транслитератор  цитата  кавычки моноширинный шрифт моноширинный шрифт горизонтальная линия отступ точка LI бегущая строка оффтопик свернутый текст

показывать это сообщение только модераторам
не делать ссылки активными
Имя, пароль:      зарегистрироваться    
Тему читают:
- участник сейчас на форуме
- участник вне форума
Все даты в формате GMT  3 час. Хитов сегодня: 2
Права: смайлы да, картинки да, шрифты да, голосования нет
аватары да, автозамена ссылок вкл, премодерация откл, правка нет