Шукайте та замініть компоненти RegEx в редакторі Atom


130

Я хочу це шукати і замінити

`https://example.com/`{.uri}

до

[https://example.com/](https://example.com/)

З vimя б зробив s/(http. *), {.uri}/[\1](\1)/gАле це не працює atom.io. Як я можу це вирішити?


3
Я також міг би скористатися vim. Я хотів би знати, як вирішити дану проблему atom.
Wintermeyer

Відповіді:


215

Якщо ви Cmd-F і відкриєте панель пошуку, справа є кнопка ". *" У правій частині. Клацніть його і тепер він перебуває в режимі регулярного вибору.

я знайшов

(http.*)\{\.uri\}

і замінити на

[$1]($1)

4
s/(http.*){.uri}/[\1](\1)/gне працює atomз RegEx активованим. Можливо, це помилка чи інший синтаксис RegEx. Це було причиною мого запитання.
Wintermeyer

19
Я знаходжу "(http. *) \ {\. Uri \}" і замінюю на "[$ 1] ($ 1)". Це працює. Це регулярний вираз perl-стилю, який я вважаю стандартом.
speedogoo

1
@speedogoo Ви повинні подати це як правильну відповідь.
метод

3
Будь-яка ідея, як я оцінюю захоплену групу, щоб зробити якісь речі перед її заміною? Наприклад, якщо $1захоплює числову групу - 123, замініть її, додавши до неї 1, щось на зразок eval($1+1)..?
SexyBeast

6
Добре, я просто забув використовувати круглі дужки в регулярному вираженні. Просто ігноруйте те, що я сказав.
Антуан

19

Juste, щоб оновити відповідь @ speedogoo для майбутніх читачів, якщо ви не знайдете режим перегляду в режимі пошуку, це виглядає приблизно так:

введіть тут опис зображення

Ви також можете відкрити його за допомогою ярлика Ctrl+ Alt+ / (за замовчуванням) .


Зауважте, що навіть ^і $ вони вже підтримуються функцією пошуку та заміни Atom.


1
Ви хочете сказати, що група Replace не працює з Atom, тим самим зробивши прийняту відповідь неправильною (і зіпсував мій день Atom)?
Дан Розенстарк

3
Я вважаю, що він мав на увазі, що початок рядка ^і кінець $рядкових якорів не підтримуються. Групова заміна підтримується.
SadullahCeran

3
Він працює в останніх версіях, пов'язаний випуск github закритий.
Френк Лі
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.