6
votes

Remplacer les nouvelles lignes, mais garder les lignes vides

Je veux remplacer les nouvelles lignes (\ r \ n) avec de l'espace, mais je veux garder les lignes vides. En d'autres termes, je veux remplacer \ r \ n avec '', si \ r \ n n'est pas précédé d'un autre \ r \ n. Par exemple: xxx

shold finit comme ... xxx

mais pas comme "ligne 1 ligne 2 ligne 3 ligne 3 lignes 4", C'est ce que je fais en ce moment avec ce xxx


0 commentaires

3 Réponses :


2
votes

Essayez ceci:

 preg_replace("/(.)\r\n(?=.|$)/", "$1 ", $string);


2 commentaires

Non. Il tue toujours les lignes vides. Merci d'avoir essayé.


Cela réduit deux nouvelles lignes à une, la première, juste après ligne 1 , peut être assortie par la regex.



1
votes

Cela devrait faire l'astuce: xxx


0 commentaires

3
votes

Essayez ceci: xxx

Bien sûr, vous pouvez modifier \ n à tout ce dont vous avez besoin.

Exemple de travail: http://ideone.com/df5l9


2 commentaires

Le seul suggéré jusqu'à présent qui semble effectivement fonctionner comme requis. +1.


Beau. J'ai utilisé (?