Remplacer le retour chariot et le saut de ligne dans Notepad ++


72

J'ai un fichier avec un mélange de CRLF et LF, et souhaite supprimer le LF. Je suis nouveau sur Notepad ++ et viens de télécharger la version 6.23.

J'utilise la boîte de dialogue Rechercher / Remplacer en mode étendu. Il trouvera et comptera le CR LF (en utilisant \ r \ n) mais si je fais un remplacement (par exemple un blanc ou \ r) rien ne se passe, et un remplacement de tout indique qu'il a remplacé 0 occurrence. Il existe environ 1000 CRLF dans le fichier et peut être 100 LF solitaire.

Des idées?


Vous voulez donc remplacer CRLF par CR et LF par un espace (ou simplement supprimer des LF autonomes)? De plus, faut-il que ce soit via Notepad ++ uniquement?
Karan

Je souhaite supprimer le LF autonome. Il ne doit pas nécessairement s'agir de Notepad ++, bien que je ne comprenne pas pourquoi Notepad ++ ne semble pas pouvoir le faire.
Alan

un guide pour notepad2 que j'utilise: blog.jtbworld.com/2011/01/…
Hayden Thring

Je voudrais envoyer le fichier à quelqu'un avec Visual Studio (sauf si vous l'avez installé vous-même), puis ouvrir le fichier là-bas. Cela devrait vous poser la question de savoir si Visual Studio peut "normaliser" les caractères de fin de ligne "automatiquement" (ouverture de fichier).
Stein Åsmul

Réponses:


69

Tâche: le fichier contient un mélange de CRLF et de LF et vous souhaitez uniquement vous retrouver avec CRLF et supprimer toutes les instances autonomes de LF .

  1. Fichier:
    1

  2. Fichier (Afficher tous les caractères):
    2

    Maintenant, si vous supprimez uniquement le LF autonome à la fin de la ligne 3, vous devez vous retrouver avec les lignes 3 et 4 jointes ensemble, le reste des fins de ligne n'étant pas affecté.

  3. Remplacer # 1 ( \npar (blank)):
    3

  4. Fichier après remplacement n ° 1:
    4

  5. Remplacer # 2 ( \rpar \r\n):
    5

  6. Fichier après remplacement n ° 2:
    6

  7. Résultat final:
    sept

Conclusion: Notepad ++ semble être capable de faire le travail correctement!


36

Dans la barre de menus du Bloc-notes ++, cliquez sur ÉditionConversion EOLAncien format Mac pour formater des fichiers entiers.

Image de comment faire cela.


2
Je pense que vous voulez dire «conversion EOL», mais c'était exactement ce que je cherchais! Merci!
Gary

Je trouve que cette méthode est la plus cohérente par rapport à la méthode de recherche / remplacement. Notepad ++ présente un comportement étrange, à savoir que si la première ligne du fichier est \ r \ n, la recherche ne le reconnaîtra pas comme tous les autres \ r \ n du document. EOL Conversion ne fait pas face à ce problème
demongolem

Documentation officielle du Bloc-notes ++ relative à la fin de ligne: docs.notepad-plus-plus.org/index.php/Lines_And_Blocks
Julian

Allemand: Bearbeiten -> Format Zeilenende -> UNIX (LF)
PeterCo

3

Vous pouvez simplement tout copier dans WordPad, créer un nouveau fichier texte avec Notepad ++ et le coller dans le nouveau fichier à partir de WordPad. Chaque ligne devrait avoir CR maintenant.


A travaillé avec un fichier qui avait un mélange de CR LF, CRetLF
pkr298

2

Voici une manière très simple ....

Sélectionnez tout le texte que vous souhaitez modifier, puis cliquez sur Menu Edition -> Opérations sur les lignes -> Joindre les lignes.

-Ou-

Appuyez simplement sur CTRL + A, puis sur CTRL + J pour faire de même.


1

vous avez peut-être activé accidentellement l'option "Afficher tous les caractères" activée dans l'éditeur

bloc-notes ++ boîte à outils


Sensationnel. Seule cette option fonctionne pour moi.
Rajeev Rathor le


0

Assurez-vous que le bouton Afficher tous les caractères est sélectionné. Utilisez Alt et faites glisser la souris sur le texte que vous souhaitez copier et coller. NE SÉLECTIONNEZ PAS CR | LF. CR | LF va être mis de côté. Faites la même chose lorsque vous collez et utilisez Alt, ne sélectionnez pas CR | LF et appuyez sur Ctrl-> v. Ceci consiste à ajouter une liste de texte à un fichier séparé avec une liste de texte.


Bienvenue sur Super User! Veuillez relire attentivement la question. Votre réponse ne répond pas à la question initiale. Cela semble être une réponse à une autre question complètement différente.
DavidPostill

0

Puis-je simplement suggérer que les 2 fins de ligne les plus courantes sont CRLF ou LF.

Si vous supprimez le LF, vous vous retrouverez avec des fins de ligne de CR seulement. Ceci est non standard.

Cela (en fonction de votre utilisation) peut casser un tas de choses. Par exemple, le fichier hosts de Windows se cassera si vous faites cela (je viens de passer beaucoup de temps sur un appel d'assistance concernant ce problème).


-1

La boîte de dialogue de recherche contient trois modes de recherche, à savoir les expressions Normal, Étendu (\ n, \ r, \ O, \ x ...) et Régulière. Le mien est paramétré par défaut sur Normal mais vous avez besoin de Extended pour les caractères d'échappement.


-1

J'ai fait face à un problème similaire. J'ai suivi les étapes ci-dessous pour supprimer LF avec CRLF

  1. Ouvrir le fichier avec notepad ++
  2. Cliquez sur Edition -> Conversion EOL -> Format Windows (Ceci remplacera remplacer LF par CRLF)
  3. Sauvegarder le fichier

1
OP veut supprimer le LF de la paire CR / LF, tout en conservant intact le LF uniquement. Votre réponse remplacera les LF solitaires par une paire CR / LF, laissant les paires CR / LF existantes inchangées. Utile peut-être, mais le contraire de ce que veut le PO.
un CVn

-1

Ouvrez le fichier dans Notepad ++.

Étape 1) mettre en chaîne de mots (voir wordwrap)
Étape 2) aller à la recherche .. cliquer sur: trouver le caractère dans la plage

Dans la fenêtre de recherche, vous avez une plage allant de 10 à 10. Vous pouvez alors trouver toutes les occurrences de CR / LF et de LF.

Supprimez manuellement si le fichier est très petit.


-1

Copiez le texte entier dans un nouvel onglet, cela remplacera automatiquement les caractères spéciaux. Le principal défi de la méthode find replace est de savoir si le format du texte / Alignment est déformé.


Avez-vous réellement essayé cela? Indice: ça ne marche pas.
DavidPostill

-1

Sur la base des réponses ci-dessus, j'ai proposé une seule solution pour résoudre ce problème, que j'avais moi-même.

Au lieu de remplacer "\r\n"pour "\n"et de le refaire, j'ai remplacé "\r\n"pour ""(rien), alors c'était fait. J'ai aussi marqué "Wrap around" et la case à côté, en prolongeant les expressions régulières possibles.

Pour une raison quelconque, il est nécessaire de remplacer les espaces doubles par un espace unique par la suite, mais le "\r\n"problème est résolu après le premier remplacement.

entrez la description de l'image ici


"J'ai remplacé" \ r \ n "par" "(rien)" - ceci n'est pas l'action demandée dans la question.
Máté Juhász

J'aimerais préciser que pour résoudre le problème proposé, toutes les étapes que j'ai mentionnées étaient nécessaires.
Rodrigo Araujo

-1

La fonctionnalité de conversion EOL du menu Edition fait très bien l'affaire, comme quelqu'un l'a déjà mentionné - très rapide, très facile, très précise. J'ai remarqué quelque chose d'un peu étrange, cependant, c'est pourquoi je dépense mes deux sous.

Je visais l'encodage Windows. Dans certains de mes fichiers, je n'avais pas la possibilité de choisir "Format Windows", car je l'avais deviné en gris, parce que la plupart des fichiers utilisaient des caractères de fin de ligne Windows. La solution simple consistait à choisir l'une des deux autres options ("Format UNIX / OSX" ou "Ancien format Mac"), puis, une fois encore, choisissez "Edition -> Conversion EOL" et le format Windows était désormais disponible.


Cette réponse duplique une autre réponse donnée ici.

-1

Pour supprimer le CRLF, vous devez sélectionner l'icône en haut indiquant "Afficher tous les caractères", et ils disparaîtront. Il suffit de numériser avec votre souris et de trouver celle qui ressemble à un P. en arrière.


Lorsque vous répondez, il est préférable d' expliquer POURQUOI votre réponse est la bonne.
Stephen Rauch le
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.