Wyszukaj i zamień na komponenty RegEx w edytorze Atom


130

Chcę to wyszukać i zamienić

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

do

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

Z vimzrobiłbym s/(http. *), {.uri}/[\1](\1)/gAle to nie działa z atom.io. Jak mogę to rozwiązać?


3
Mógłbym też użyć vim. Chciałbym wiedzieć, jak rozwiązać dany problem atom.
Wintermeyer

Odpowiedzi:


215

Jeśli naciśniesz Cmd-F i otworzysz okienko wyszukiwania, po prawej stronie znajduje się przycisk „. *”. Kliknij go, a teraz jest tryb regex.

znajduję

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

i zamień na

[$1]($1)

4
s/(http.*){.uri}/[\1](\1)/gnie działa atomz aktywowanym wyrażeniem RegEx. Może to błąd lub inna składnia RegEx. To był powód mojego pytania.
Wintermeyer

19
Znajduję „(http. *) \ {\. Uri \}” i zamieniam na „[$ 1] ($ 1)”. To działa. To jest wyrażenie regularne w stylu Perla, które moim zdaniem jest standardem.
speedogoo

1
@speedogoo Powinieneś przesłać to jako poprawną odpowiedź.
metoda

3
Masz jakiś pomysł, jak ocenić przechwyconą grupę, aby zrobić na niej coś przed zastąpieniem? Na przykład, jeśli $1przechwytuje grupę liczb - 123, zamień ją na dodanie 1, na przykład eval($1+1)…?
SexyBeast

6
Ok, po prostu zapomniałem użyć nawiasów w wyrażeniu regularnym. Po prostu zignoruj ​​to, co powiedziałem.
Antoine

19

Wystarczy zaktualizować odpowiedź @ speedogoo dla przyszłych czytelników, jeśli nie znajdziesz trybu wyrażenia regularnego w widoku wyszukiwania, wygląda to tak:

wprowadź opis obrazu tutaj

Możesz go również otworzyć za pomocą skrótu Ctrl+ Alt+ / (domyślnie) .


Zwróć uwagę, że nawet ^i $ są już obsługiwane przez funkcję Znajdź i zamień Atom.


1
Czy mówisz, że zastępowanie grupowe nie działa z Atomem, przez co zaakceptowana odpowiedź jest błędna (i psuje mój dzień z Atomem)?
Dan Rosenstark

3
Myślę, że miał na myśli, że kotwice początku ^i końca linii $nie są obsługiwane. Obsługiwane jest zastępowanie grup.
SadullahCeran,

3
Działa w najnowszych wersjach, problem z połączonym githubem został zamknięty.
Frank Lee,
Korzystając z naszej strony potwierdzasz, że przeczytałeś(-aś) i rozumiesz nasze zasady używania plików cookie i zasady ochrony prywatności.
Licensed under cc by-sa 3.0 with attribution required.