2010-07-24 7 views
0

Je dois augmenter l'indentation d'un fichier xml formaté à 4 espaces de 2 J'ai essayé d'utiliser un formateur XML alimenté par regex mais j'ai oublié d'indenter la fermeture des balises qui étaient sur une nouvelle ligne.PHP Augmenter l'indentation de DOMDocument-> saveXML?

Quelles sont les options que j'ai, en utilisant preg_replace semble la meilleure option, la recherche regex serait quelque chose comme/({2}^ANYTHING_EXCEPT_SPACE)/mais c'est aussi loin que je peux avoir l'impression.

Merci, Xeross

Répondre

3
preg_replace('/^[ ]+(?=<)/m','$0$0',$string); 
+0

Merci, autre chose que je me demande pourquoi une étiquette qui a une nouvelle ligne inbetween les balises d'ouverture et de fermeture et rien d'autre (sauf les espaces) sera formaté à tort: ​​http://pastebin.com/c3C6faNE –

+0

Oh oui et vous avez 1 parenthèses de fermeture trop nombreux –

+1

@Xeross: Aha, il a également fait correspondre '\ n \ n {espaces}' en raison de '\ s', l'a légèrement modifié donc il devrait seulement des espaces de correspondance, pas d'autres espaces ('\ n \ r \ t') – Wrikken

Questions connexes