Comment ajouter quelque chose toutes les x lignes


15

Comment ajouter

Keyboard : E : KeyDown
DELAY : 1300
Keyboard : E : KeyUp
DELAY : 200

à chaque ligne X dans un document texte?


1
Vous pouvez simplement le faire avec un langage de programmation comme C ou Java.
Ali Hashemi

Pouvez-vous être un peu plus précis sur ce que contient déjà votre fichier et sur ce que vous souhaitez qu'il remplace? Cela peut probablement être fait en utilisant la fonction de recherche / remplacement d'expressions régulières de Notepad ++, mais je devrais obtenir un exemple plus clair (similaire à l'exemple ici ) pour fournir une solution.
allquixotic

Pour info vous pouvez aussi le faire en ligne textmechanic.com/text-tools/basic-text-tools/…
Franck Dernoncourt

Réponses:


23

Pour insérer une nouvelle ligne toutes les 9 lignes, accédez à Search> Replacemenu (raccourci CTRL+ H) et procédez comme suit:

  1. Trouver quoi:

    (.*\r?\n){9}\K
    
  2. Remplacer:

    Your new line\n
    
  3. Sélectionnez le bouton radio "Expression régulière"

  4. Puis appuyez Replace All

Vous pouvez le tester sur regex101 .


1
Cela a fonctionné pour moi. Mais n'oubliez pas de décocher la case [x] ". As linebreaks" pour une recherche régulière.
patrics

Très bien travaillé, merci! Remarque, si votre nouvelle ligne a des caractères spéciaux regex comme \ ou *, vous devrez les échapper avec une barre oblique inverse. \\ ou \*.
twasbrillig

Apparemment, \ K est un petit bug à remplacer. Dans mon cas, j'avais besoin d'utiliser des groupes de capture similaires à l'autre réponse au lieu d'utiliser \ K.
AaronLS

3

Toujours en utilisant la recherche / remplacement, cela a mieux fonctionné dans mon cas: sélectionne [votre exemple 9 lignes] dans un groupe (la paire intérieure '()' pour chaque ligne suivie par 'nouvelle ligne'), puis la paire '{}' pour la nombre de lignes d'anticipation à saisir, et la paire externe '()' pour les 9 lignes conservées en groupe

((. * \ n) {9})

Utilisez la variable \ 1 pour restaurer le même groupe de lignes [9], suivi de [votre exemple de ligne d'insertion] et d'une nouvelle ligne

\ 1 \ nClavier: E: DELAI KeyDown: 1300 Clavier: E: DELAI KeyUp: 200 \ n


Veuillez relire attentivement la question. Votre réponse ne répond pas à la question d'origine.
DavidPostill

Ajusté pour correspondre à la syntaxe OP
netify

0

Je suis sûr que cela fonctionne dans Notepad ++, mais voici comment je l'ai résolu avec PSPads phReplace:

Chercher:

(.*\r\n.*\r\n.*\r\n.*\r\n.*\r\n.*\r\n.*\r\n.*\r\n)

Remplacer:

$1New Line[Enter]

[Enter]signifie appuyer sur le bouton Entrée car phReplace ne permet pas \r\nde remplacer le champ.


Comment est-ce mieux que la réponse @psxls?
Toto

@Toto Sa réponse n'a pas fonctionné pour moi.
mgutt

C'est strictement le même mais condensé
Toto
En utilisant notre site, vous reconnaissez avoir lu et compris notre politique liée aux cookies et notre politique de confidentialité.
Licensed under cc by-sa 3.0 with attribution required.