Dans Notepadd ++, le \r\n
regex trouvera toutes les combinaisons CRLF
. Mais j'ai quelques lignes qui se terminent juste par LF
s. Tout d'abord, c'est quoi ça? Ensuite, comment puis-je faire correspondre et supprimer exactement cela? Ni \r
ou \n
travaux.
LF signifie "Line Feed"
Vous pouvez en lire plus sur cette réponse sur serverfault.se :
CR LF signifie "Carriage Return, Line Feed" - c'est une gueule de bois DOS de l'ancien temps où certains appareils nécessitaient un retour chariot, et certains appareils nécessitaient un saut de ligne pour obtenir une nouvelle ligne, Microsoft a donc décidé de simplement faire en sorte qu'une nouvelle ligne ait les deux caractères, afin qu'ils sortent correctement sur tous les appareils.
Les programmes Windows attendent leur format de nouvelle ligne dans CRLF (
\r\n
). * nix attend juste LF data (\n
). Si vous ouvrez un document texte Unix dans le Bloc-notes sous Windows, vous remarquerez que tous les sauts de ligne disparaissent et que le document entier se trouve sur une seule ligne. C'est parce que le Bloc-notes attend des données CRLF et que le document Unix n'a pas le\r
personnage.Il existe des applications qui convertiront ceci pour vous sur une distribution standard * nix (dos2unix et unix2dos)
Pour ceux qui se demandent, un retour chariot et un saut de ligne diffèrent de l'époque des jours de la machine à écrire, quand un retour chariot et un saut de ligne étaient deux choses différentes. L'un vous amènerait au début de la ligne (retour chariot) et l'autre vous déplacerait d'une ligne plus bas, mais au même emplacement horizontal (saut de ligne)
Ainsi, vous devriez pouvoir le remplacer par \n
.
En faisant preuve de bon sens, je suggérerais l'approche suivante:
Et vous avez terminé.
Réglez l'encodage sur ANSI.
Alors\n ne verra que "LF"