Supprimer certains retour à la ligne et pas d'autres.

Consultez la formation au référencement naturel Google de WebRankInfo / Ranking Metrics


Meeuuuhhh
WRInaute accro
WRInaute accro
 
Messages: 1795
Inscription: Lun Jan 08, 2007 21:48

Supprimer certains retour à la ligne et pas d'autres.

Message le Jeu Mai 03, 2007 12:20

Bonjour,

J'ai un fichier text. Les définitions se présentent ainsi quand on fait un copié/collé (sinon tout est tassé, sans aucun retour, les saut de ligne sont marqués par des espèces de carré) :

Code: Tout sélectionner
:A
# 1. np.
{{MSDOS{{DISQUE
Quand cette lettre est suivie de « : », c'est
l'identifiant habituel du {lecteur{ de {disquette{s, en particulier
sous {MS-DOS{. Exemple&nbsp;: <i>«&nbsp;Copie tout sur le lecteur
A:&nbsp;!&nbsp;»</i>.
# 2. ext.
{{TYPFICH{{EXT
Extension du nom d'un fichier contenant du code source {Ada{.
# 3. sg.
{{INTERNET
Address. Type d'enregistrement {DNS{ contenant une adresse d'un hôte
et son nom réseau correspondant.
(09-11-2006).

Alors là mon problème, c'est que vous voyez qu'il y a deux types de retour : les retour normaux, par exemple entre le titre (:A), les catégories (#1.np) et puis tout en bas, pour la date.
Et puis il y a des retours charriots impromptus, en plein milieu de phrase. Par exemple à la première ligne, il y a un retour juste après "c'est". Et en dessous, il y en a un juste après "particulier" etc...

Or, je veux conserver les premiers saut de ligne, mais pas les retour à la ligne impromptus en plein milieu de phrase.

Si je fais ça : j'obtiens très exactement à l'affichage, le résultat que vous voyez au dessus et que je ne veux pas :

Code: Tout sélectionner
$definition=nl2br($definition);


Si je ne fais pas de nl2br(), alors tout est tassé, sans aucun saut de ligne nulle part.

Comment faire svp :question:


Meeuuuhhh
WRInaute accro
WRInaute accro
 
Messages: 1795
Inscription: Lun Jan 08, 2007 21:48

Message le Jeu Mai 03, 2007 12:38

Je précise que les sauts de ligne à conserver sont indiqués dans le fichier TXT par un rectangle verticale, je ne connais pas le nom de ce symbole (si je veux le copier/coller ici, ça fait un saut de ligne).
Pour les retours à la ligne en plein milieu de phrase, ils ne sont indiqués par rien.


julienr
WRInaute passionné
WRInaute passionné
 
Messages: 870
Inscription: Mar Aoû 05, 2003 14:49

Message le Jeu Mai 03, 2007 12:50

salut,
je pense que les "carrés" sont des "\n"
alors qu'un retour à la ligne sous windows est "\r\n"
alors comme çà et à tout hasard :
Code: Tout sélectionner
$definition = str_replace( "\r\n", "", $definition );
$definition = str_replace( "\n", "\r\n", $definition );


Meeuuuhhh
WRInaute accro
WRInaute accro
 
Messages: 1795
Inscription: Lun Jan 08, 2007 21:48

Message le Jeu Mai 03, 2007 13:06

Salut julienr,

En fait j'ai regardé le fichier txt, qui est un peu touffu, et tous les retours à la ligne, y compris ceux que je qualifie d'impromptus, sont marqués par le caré en question (en fait un petit rectangle horizontal). Je ne sais pas pourquoi c'est comme ça.


ça va donc être assez embettant de faire le tri, je crois...


Bh@Mp0
WRInaute occasionnel
WRInaute occasionnel
 
Messages: 245
Inscription: Mar Jan 18, 2005 19:02

Message le Jeu Mai 03, 2007 14:14

Il faudrait que tu l'ouvres avec un "vrai" éditeur de texte (pas notepad) : vim, notepad++, pspad?, ...
Ceci afin de voir quels sont ces caractères ...


Meeuuuhhh
WRInaute accro
WRInaute accro
 
Messages: 1795
Inscription: Lun Jan 08, 2007 21:48

Message le Jeu Mai 03, 2007 14:31

Salut,

Que je l'ouvre dans dreamweaver ou word les rectangle en question sont automatiquement transformés en saut de ligne à l'affichage.


julienr
WRInaute passionné
WRInaute passionné
 
Messages: 870
Inscription: Mar Aoû 05, 2003 14:49

Message le Jeu Mai 03, 2007 14:34

moi je dis ton fichier faut le passer à l'éditeur hexa :D
mais je suis prêt à parier que c'est du 0x0A "\n" et 0x0D "\r"


Bh@Mp0
WRInaute occasionnel
WRInaute occasionnel
 
Messages: 245
Inscription: Mar Jan 18, 2005 19:02

Message le Jeu Mai 03, 2007 14:46

Meeuuuhhh a écrit:Salut,

Que je l'ouvre dans dreamweaver ou word les rectangle en question sont automatiquement transformés en saut de ligne à l'affichage.


Je t'ai parlé d'un éditeur de texte !
Regarde la liste que je t'ai donné :)


Formation recommandée sur ce thème :

Formation Référencement naturel Google : apprenez une méthode efficace pour optimiser à fond le référencement naturel dans Google de façon durable... Formation animée par Olivier Duffez et Fabien Facériès, experts en référencement naturel.

Tous les détails sur le site Ranking Metrics : programme, prix, dates et lieux, inscription en ligne.

Lectures recommandées sur ce thème :

Consultez la description détaillée des produits ou services de Google suivants : Google Apps for your Domain



Qui est en ligne

Utilisateurs parcourant ce forum: Aucun utilisateur enregistré et 0 invités