O'Reilly logo

Reguläre Ausdrücke Kochbuch by Steven Levithan, Jan Goyvaerts

Stay ahead with the world's most comprehensive technology and business learning platform.

With Safari, you learn the way you learn best. Get unlimited access to videos, live online training, learning paths, books, tutorials, and more.

Start Free Trial

No credit card required

8.7 Tags vom Typ <table> ein Attribut „cellspacing“ hinzufügen, die es noch nicht haben

Problem

Sie wollen eine (X)HTML-Datei durchsuchen und alle Tabellen um cellspacing="0" ergänzen, wenn sie noch kein Attribut cellspacing besitzen.

Dieses Rezept dient als Beispiel dafür, wie man Tags im XML-Stil ein Attribut hinzufügen kann, das sie noch nicht haben. Sie können sowohl das Tag als auch Attributnamen und -werte beliebig austauschen.

Lösung

Regex 1: Stark vereinfachte Lösung

Mit einem negativen Lookahead können Sie <table>-Tags finden, die das Wort cellspacing nicht enthalten:

<table\b(?![^>]*?\scellspacing\b)([^>]*)>
  • Regex-Optionen: Groß-/Kleinschreibung ignorieren

  • Regex-Varianten: .NET, Java, JavaScript, PCRE, Perl, Python, Ruby

Im Freiform-Modus:

<table ...

With Safari, you learn the way you learn best. Get unlimited access to videos, live online training, learning paths, books, interactive tutorials, and more.

Start Free Trial

No credit card required