[ID CS4-CS6] Выделить только один раз и только в первом случае

Статус
Закрыто для дальнейших ответов.

Вячеславик

Участник
Топикстартер
Сообщения
18
Реакции
0
Уважаемые, стоит задача выделить в статье имя и фамилию п/ж только один раз и только в первом случае, но расположение искомого может повторяться и быть не сначала абзаца (ну и само собой склонения).
Нужно сделать GREP выражение, к стилю хочу присвоить.
ПРИМЕР:
Слово слово слово, слово слово Иван Иванов слово, слово слово слово. Слово слово Иван Иванов, слово слово Иван Иванов - слово слово....
У меня так получается только когда Иван Иванов стоит в самом начале абзаца.
 
Последнее редактирование:

NNN5

Модератор
15 лет на форуме
Сообщения
1 256
Реакции
1 012
В стиль абзаца, боюсь, запихнуть не получится.
Можете сделать через поиск-замену: в первый проход отыскать все сочетания "Имя Фамилия"
(.+)(\<\u\l+ \<\u\l+\b){1}(.+)
Заменить их, например, на:
$1%$2%%$3
чтобы окружить знаками % и %% нужный текст.
Во второй проход позаменять эту служебную штуку %Имя Фамилия%% на Имя Фамилия с присвоением символьного стиля.
 
  • Спасибо
Реакции: George

George

I wish I was a monster you think I am
15 лет на форуме
Сообщения
17 323
Реакции
7 870
В стиль абзаца, боюсь, запихнуть не получится.
Можете сделать через поиск-замену: в первый проход отыскать все сочетания "Имя Фамилия"
(.+)(\<\u\l+ \<\u\l+\b){1}(.+)
Заменить их, например, на:
$1%$2%%$3
чтобы окружить знаками % и %% нужный текст.
Во второй проход позаменять эту служебную штуку %Имя Фамилия%% на Имя Фамилия с присвоением символьного стиля.
Ты это, в тег кода запихни, а то боюсь ИнДизайн смайлики не поймёт'))'
 
  • Спасибо
Реакции: NNN5

azz

alexey
15 лет на форуме
Сообщения
711
Реакции
359
так должно работать
Код:
Иван Иванов(?=.*$)
 
  • Спасибо
Реакции: NNN5

andrejK

R.I.P.
Сообщения
10 300
Реакции
5 218
@azz, нет. будут выделены все.
 
  • Спасибо
Реакции: carry

Вячеславик

Участник
Топикстартер
Сообщения
18
Реакции
0
Главное я понял что там 'by'
Но для меня это не выход, к сожалению...
 

azz

alexey
15 лет на форуме
Сообщения
711
Реакции
359

Не по теме:
@andrejK,
действительно, поторопился...

 

andrejK

R.I.P.
Сообщения
10 300
Реакции
5 218
@azz, всё для тебя! )

upload_2017-3-2_15-43-42.png
 
  • Спасибо
Реакции: carry и NNN5

andrejK

R.I.P.
Сообщения
10 300
Реакции
5 218
я человек тёмный. и мне кажется, что невозможно в стиле.

2-х проходный греп в стиле Нади видится мне решением.
 

NNN5

Модератор
15 лет на форуме
Сообщения
1 256
Реакции
1 012
Интересная штука: этот код для поиска работает ровно так, как надо, а будучи зашитым в стиле абзаца, красит всех Иванов Ивановых:
Code:
\<\u\l+ \<\u\l+\b(?=.*$)
 

Вячеславик

Участник
Топикстартер
Сообщения
18
Реакции
0
Интересная штука: этот код для поиска работает ровно так, как надо, а будучи зашитым в стиле абзаца, красит всех Иванов Ивановых:
Code:
\<\u\l+ \<\u\l+\b(?=.*$)
Действительно, но блин, как так?! Истина где-то рядом, ахах. Ковыряю это выражение. Пока ничего не выходит
 

granat

Участник
Сообщения
382
Реакции
315
Не очень красивый метод, но работает.
Создать два символьных стиля Bold и Regular.
В стиле параграфа присвоить
Bold:
Код:
(^.+?)(\u\l+ \u\l+)|(^\u\l+ \u\l+)
Regular:
Код:
(^.+?)(?=\u\l+ \u\l+)
 
  • Спасибо
Реакции: andrejK, LeonidB и NNN5
Статус
Закрыто для дальнейших ответов.