Notingad ++ групування / захоплення не працює


1

Регулярний вираз, наприклад " (Отримано): "має відповідати кожному" Отримано "що передує" : ".

N ++ знаходить для мене весь рядок: " Отримано: "Тому замість підсвічування мого документа" Отримано "Я отримую" Отримано: "Що відбувається? Знайти і замінити поводиться однаково.

Я використовую версію 6.5.5 (UNICODE).


Ви просите його відповідати Received з подальшим від : (товстої кишки) точно що він робить. Якщо ви хочете відповідати точно Received потім використовуйте (Received) ні (Received):
DavidPostill

Ні, я прошу його 1) відповідати слову Отримано 2) тільки ті, які передують двокрапці. ps Я не знаю, чому N ++ також виділяє двокрапку, оскільки не в паренах.
sasha

Це є що вона відповідає. The товстої кишки є частина матчу ви просили. це є не частина групового виразу (...) яка призначена для використання в замість поля.
DavidPostill


1
Вираз групи просто зберігає відповідність для пізніше. Це не має нічого спільного з підсвічуванням всього відповідного регулярного виразу.
DavidPostill

Відповіді:


2

Функція RegEx ви дивитеся на Позитивний погляд . Якщо ви шукаєте (Received)(?=:) у:

Received
Received:
[Received]
Received:

тільки 2-й і 4-й рядок Received буде відповідати.


Ви пропустили точку груп () біт.

Групування за () дозволяє зафіксувати символи з групи та використовувати їх пізніше.

Спробуйте замінити ([\d]+): с prefix_\1_suffix у:

12343:
123a:
1111:
222
333:

І ви повинні отримати:

prefix_12343_suffix
123a:
prefix_1111_suffix
222
prefix_333_suffix

"щоб захопити символи ... і використовувати їх пізніше". Добре, для видобутку. Я думав, що вони були підвиразністю, яку треба замінити іншою.
sasha

що таке "майбутнє регулярного виразу"?
sasha


"Позитивний погляд працює так само. Q (? = U) збігається з aq, за яким йде au, не роблячи частину u відповідності. і знак рівності. "
DavidPostill

@sasha Групи - це подекспресії, але все це в тому, що ви можете посилатися на них пізніше. Я маю на увазі "особливість".
g2mk
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.