Question Éditeur avec recherche et remplacement muti-line


Je recherche un éditeur de texte pour Windows capable d'effectuer des recherches et de remplacer le fonctionnement du bloc de texte multi-lignes.

Il devrait pouvoir exécuter cette opération sur un dossier ou sur les fichiers actuellement ouverts.

Idéalement, il prend en charge les expressions régulières, mais ce n’est pas essentiel.

Merci!


4
2017-10-04 23:01


origine




Réponses:


j'ai utilisé Bloc-notes ++ pendant un moment quand je devais encore faire des choses sur un ordinateur Windows; il a un support décent pour les expressions régulières. Il possède une interface intuitive et vous ne devez pas mémoriser les combinaisons de touches et les raccourcis.


8
2017-10-05 00:17



Essayé le bloc-notes, fonctionne très bien, seul petit problème est que le texte multi-lignes n'est pas affiché correctement dans une petite zone de texte dédiée à la phrase de recherche. (caractères étranges où tab et \ r \ n devraient être). Sinon aimer ça! Surtout le regroupement des résultats de recherche. - Art
Hmm ça fait longtemps que je ne l'ai pas utilisé, mais je pense qu'il y a des options pour savoir comment les nouvelles lignes, les retours de chariot et les onglets ont l'air. Vous voudrez peut-être jouer un peu avec les paramètres. J'avais l'habitude de basculer entre les symboles visibles pour ceux-ci et une apparence plus conventionnelle en fonction de ce que je faisais. - Shane
Notepad ++ est également un package prêt à l'emploi dans le gestionnaire de logiciels Ubuntu. Je l'utilise pour mon remplacement multiligne et ça marche très bien. - Felix Dombek


Vim

Les blocs sont sélectionnés avec v, Ctrl-V ou Shift-V (entre autres). Une fois sélectionnées, les commandes de substitution sont exécutées par défaut sur le bloc.


2
2017-10-04 23:19



Pouvez-vous rechercher le bloc sélectionné dans les fichiers ouverts dans vim? - Art
@ Art oui, mais je ne sais pas comment - quack quixote
Je ne comprends pas la question. - wfaulk
Fondamentalement, je sélectionne un bloc de texte avec "V", puis je veux rechercher texte sélectionné (pas dedans) dans un fichier / dossier donné. Est-ce que vim peut faire ça? - Art
@Art - vous souhaitez trouver un bloc de texte sélectionné dans les fichiers d'un dossier, non? Pas à l'intérieur, mais vim s'appuie sur plusieurs outils pour ce genre de chose (grep et autres), alors commencez et voyez ce dont vous avez besoin. - Rook


emacs

Utilisation C-q C-j pour spécifier une nouvelle ligne dans le motif à associer ou remplacer par. Le texte brut et l'expression rationnelle sont supportés en une seule fois ou en mode requête (obtenez une confirmation pour chaque correspondance).

Les fonctions que vous voulez sont

replace-string
query-replace-string
replace-regexp
query-replace-regexp

et ils peuvent tous être invoqués avec M-x <function name>. Certains ont des liaisons par défaut.

Utilisation C-h f <function-name> pour savoir quelle liaison est actuellement affectée à une fonction.

Pour sélectionner un bloc dans le texte à utiliser

  1. Plus le point à une extrémité du bloc. Frappé C-<space>.
  2. Déplacez le point à l'autre extrémité. Frappé C-w qui va tirer tout le bloc alors C-y retourner le bloc arraché ou invoquer copy-region-as-kill.
  3. M-x <function> puis C-y coller le bloc dans l'espace de recherche. Les nouvelles lignes sont traitées naturellement.
  4. procéder comme d'habitude.

2
2017-10-04 23:39



Vous pouvez également sélectionner un bloc de texte en le sélectionnant avec une souris. Je sais que cela semble évident, mais certaines personnes ne savent pas qu'Emacs est une application graphique. - Richard Hoskins


EditPadPro pour la victoire!  Il fait tout ce que vous avez demandé:

  1. Multi-ligne chercher et remplacer
  2. Remplacez tous les fichiers ouverts
  3. Prise en charge des regex

En fait, je pense que le version gratuite fait tout cela aussi.

C'est sérieusement le meilleur éditeur de texte que j'ai jamais utilisé. Il a toutes les fonctionnalités dont vous pourriez avoir besoin. Je trouve généralement que cela dépasse l'appel du devoir.


1
2017-10-05 02:33





Lorsque j'ai besoin d'une recherche sur plusieurs lignes, j'utilise Microsoft Word. Je n'utilise jamais Microsoft Word en tant qu'éditeur de texte, sauf lorsque j'ai besoin de cette fonctionnalité. Vous pouvez utiliser ^ p pour rechercher des sauts de ligne.

Typiquement je fais ceci:

I edit a text file in my favorite text editor, but I need multi-line search-replace
Ctrl-A, Ctrl-C to select and copy all text editor
Start Microsoft Word
Ctrl-V
Search/Replace "First line^pSecond line" with "New first line^pNew second line"
Ctrl-A, Ctrl-C to select and copy all from Word
Switch back to text editor
Ctrl-V to paste newly fixed-up text
Continue editing document in my favorite editor

Cela fonctionne pour moi.


0
2017-10-05 00:22





Pas un éditeur de texte, mais vous devez donner TextCrawler un coup de feu. C'est un outil très léger et puissant pour effectuer des recherches et remplacer des fichiers. Une simple et bonne interface pour mettre du texte multiligne.

Il permet une recherche standard, une expression régulière, une recherche floue et des commandes par lots.


0
2018-01-15 14:45