Dopasuj dwie spacje za pomocą wyszukiwania przyrostowego


20

Podczas wyszukiwania za pomocą:

C-s SPC SPC

Dopasowuje także pojedyncze spacje. Chcę dopasować dokładnie dwie spacje.

Odpowiedzi:


24

Użyj M-s SPCpodczas wyszukiwania, aby dosłownie przełączać pasujące białe znaki. Przy dosłownym dopasowaniu każdy SPCwpisany znak jest dopasowywany indywidualnie. (To było kiedyś domyślne zachowanie Emacsa, BTW.)

Aby skonfigurować to jako domyślne zachowanie, dostosuj opcję search-whitespace-regexpdo nil. ( M-x customize-option search-whitespace-regexp.)

Zobacz instrukcję GNU Emacs, węzeł Special Isearch.


Dzięki za to. Może być dobrze umieścić tam linię .emacs (set-variable 'search-whitespace-regexp nil). Dzięki.
Gray

1
@Gray: set-variablenie zapisuje nowej wartości na stałe, więc nie zmieni to domyślnego zachowania. Myślę, że o M-x customize-optionto tu chodzi.
Drew

Och, mówiłem o tym w pliku emacsa. Nie wiedziałem o opcji dostosowywania. Dzięki za edycję.
Gray

3

Użycie wyrażenia regularnego wyrażenia regularnego regexp rozwiązuje problem, jeśli unikniesz spacji:

C-M-s \SPC\SPC

Możesz także użyć wyszukiwania i zamień bez ukośników odwrotnych, jeśli tego właśnie szukasz:

M-% SPC SPC

Ten sam problem napotkałem dzisiaj podczas budowania makra klawiatury. Ta odpowiedź rozwiązała dla mnie problem, chociaż ESC C-szamiast tego musiałem użyć kombinacji klawiszy . Zobacz także github.com/leoliu/ggtags/issues/64
Jonas Dahlbæk

3

Korzystanie z wyszukiwania wyrażenia regularnego pomaga, ale możesz także upewnić się, że w wyszukiwaniu znajdują się dosłowne spacje, używając C-q SPCcudzysłowu w wyszukiwaniu.

Aby następnie usunąć odpowiedź @ Rovanion przy użyciu isearch-forward-regexp:

C-M-s C-q SPC C-q SPC

To wyszuka dwa kolejne spacje. Co ciekawe, isearch-forward-regexpwymaga dyskretnych dopasowań. Szukając aaadla aadopasuje tylko raz, a nie znowu na drugim znaku.


Jeśli chodzi o ostatnią nutę, wyobraź sobie, że szukasz „zero lub więcej białych znaków, po których następuje rzecz” i, biorąc pod uwagę N znaków wiodących białych znaków, musisz przejść przez wszystkie pojedyncze N + 1 dopasowania. Widzę, że jest to rozsądna opcja , ale byłoby to straszne niewykonanie zobowiązania.
phils,
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.