Question

Je suis à la recherche d'une solution à un nid de rats du code que je tendis - il est énorme en volume, donc je suis à la recherche des suggestions à une approche programmatique pour commenter ce div ferme où

.

Exemple:

AVANT

<div id="wrapper-item">
<div id="outer-item">
    <div class="inner-item">
<h1>Just Some Placekeeper Copy</h1>
<p>Lorem ipsum dolor sit amet, consectetuer adipiscing.</p>
    </div>
</div>  
</div>

après

<div id="wrapper-item">
<div id="outer-item">
    <div class="inner-item">
<h1>Just Some Placekeeper Copy</h1>
<p>Lorem ipsum dolor sit amet, consectetuer adipiscing.</p>
    </div><!-- .inner-item -->
</div><!-- #outer-item -->      
</div><!-- #wrapper-item -->

J'ai essayé quelques tentatives Regex sans joie, je serais curieux de ce que la meilleure approche est ..

Était-ce utile?

La solution

Si elle est xhtml valide, alors vous pouvez le mettre dans un document XML et passer ensuite à traiter les balises div en trouvant tous, puis en ajoutant un frère qui a le noeud de commentaire que vous voulez.

Autres conseils

Une expression régulière solitaire pourrait fonctionner, mais il pourrait être préférable d'écrire un programme qui est renforcée par des expressions régulières. Obtenez le texte entre < div id=" et >, puis ajouter que dans une liste ou une pile, et le lier, dans l'ordre, avec un indice int. Continuer la numérisation et à la recherche d'une étiquette « », pop le plus récent texte sur la pile, et le formater pour devenir un commentaire.

Je viens d'utiliser un script pour indenter correctement le code HTML pour que je puisse vérifier un coup d'oeil si toutes les balises sont fermées correctement - la mise en retrait est correctement les toucher la marge de gauche. Pour vérifier ce que l'ouverture correspond à ce que la fermeture-je utiliser un éditeur de texte de pliage comme SciTe ou Komodo Edit je peux parcourir le code correctement dentelée en ouvrant et en sections effondrement.

Si quelqu'un est intéressé par le script indenter (écrit en tcl) Je peux le télécharger quelque part. Sinon, vous pouvez essayer d'utiliser quelque chose comme HTMLTidy pour faire le formatage.

Vous pouvez utiliser une API XML / DOM pour une langue particulière et jouer avec la façon dont il gère les objets Commentaire. Par exemple, Python - http://docs.python.org/ bibliothèque / xml.dom.html # commentaire-objets

<div>whatever</div>
<!-- this comment is already deprecated -->

Il suffit d'utiliser un éditeur décent qui met en avant le début / balise de fin. Même notepad2 fait cela. La plupart des éditeurs peuvent également sélectionner l'étiquette et le contenu, ou tout simplement le contenu. De nombreux éditeurs reformater également le code html pour vous (si vous osez).

Commentant la fin de la balise va sortir de la synchronisation et être encore plus difficile à suivre pour vous ou vos collègues de travail.

Si vous finissez par ajouter avec succès des commentaires redondants à chaque div, durée, p, ul, etc étiquette, je pense que vous trouverez le code est encore plus pléthorique et illisible.

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top