как скопировать результаты поиска в буфер обмена

Post Reply
dimon40001
Posts: 21
Joined: 05.05.2022 18:52

как скопировать результаты поиска в буфер обмена

Post by dimon40001 »

Всем привет,

внезапно встала задача - скопировать все результаты поиска по документу в буфер обмена.

Мне казалось, CudaText это умеет. Возможно путаю с Intellij IDEA.

Пробовал команду Extract Regex Matches..., она создает отдельную вкладку и копирует результаты туда. Но при этом она нарушает порядок строк.

CudaText 1.164.0.0
main Alexey
Posts: 2236
Joined: 25.08.2021 18:15

Re: как скопировать результаты поиска в буфер обмена

Post by main Alexey »

надо делать это через "Select all" (команда в кнопке "три точки" в диалоге поиска) и после поиска "Копировать в буфер" (скопирует все мульти-выделения в буфер).

и не надо 1.164 юзать, много багов уже исправлено после нее.
mix-7
Posts: 741
Joined: 11.05.2018 11:02

Re: как скопировать результаты поиска в буфер обмена

Post by mix-7 »

Классная идея и реализация!
Так можно построить TOC - искать заголовки по + или # в 1-м символе
(Это для WikidPad или Markdown, для других лексеров другие признаки заголовков)
mix-7
Posts: 741
Joined: 11.05.2018 11:02

Re: как скопировать результаты поиска в буфер обмена

Post by mix-7 »

dimon40001 wrote: 17.10.2023 17:37 задача - скопировать все результаты поиска по документу в буфер обмена.
Так результаты поиска будут одинаковые - подстрока поиска, разве нет?

В моем случае надо искать с помощью регулярного выражения строки с начальным +:

Code: Select all

^\++.*
См. Lite lexer WikidPad
main Alexey
Posts: 2236
Joined: 25.08.2021 18:15

Re: как скопировать результаты поиска в буфер обмена

Post by main Alexey »

>Так результаты поиска будут одинаковые
с регулярками - нет.
mix-7
Posts: 741
Joined: 11.05.2018 11:02

Re: как скопировать результаты поиска в буфер обмена

Post by mix-7 »

> с регулярками - нет.

Не могу понять, баг ли это или мое недопонимание.
Придумал мини-todo: "- " в первой позиции что сделать:

Code: Select all

- сделать дело 1
...
- сделать дело n
Эти записи разбросаны по тексту.
Ищу с помощью регулярного выражения

Code: Select all

^-\ .*
Находит и выделяет всю строку.
Это правильно.
Но

Code: Select all

^-\.*
ищет и выделяет первый символ "-"
Почему?!
Насколько я понял, оно должно искать первый символ строки "-",за которым следует точка ".", правильно?
А выражение ищет "- ", что, на мой взгляд, неправильно.

Поясните, пожалуйста!
main Alexey
Posts: 2236
Joined: 25.08.2021 18:15

Re: как скопировать результаты поиска в буфер обмена

Post by main Alexey »

правильно ищет.
проверьте выражение на https://regex101.com/ .
там справа дается разжевывание. я и так вижу что regex ищет "точку" (ноль или более).
потому что "\." это "чисто точка".
main Alexey
Posts: 2236
Joined: 25.08.2021 18:15

Re: как скопировать результаты поиска в буфер обмена

Post by main Alexey »

чтобы искать "точку", уберите * после нее.
mix-7
Posts: 741
Joined: 11.05.2018 11:02

Re: как скопировать результаты поиска в буфер обмена

Post by mix-7 »

> разжевывание
> на https://regex101.com/ .

> ищет "точку" (ноль или более).

Спасибо огромное!
Теперь понял!
* (ноль или более)!
Буду знать теперь ресурс https://regex101.com/
А то я все по таблицам смотрел.

CudaText - не только замечательный редактор, но и образовательный ресурс!
Post Reply