1. Dashboard
  2. Forum
    1. Unerledigte Themen
  3. Mitglieder
    1. Letzte Aktivitäten
    2. Benutzer online
    3. Team-Mitglieder
    4. Trophäen
    5. Mitgliedersuche
  4. Tutorial Bereich
  • Anmelden
  • Registrieren
  • Suche
Dieses Thema
  • Alles
  • Dieses Thema
  • Dieses Forum
  • Seiten
  • Forum
  • Lexikon
  • Erweiterte Suche
  1. Informatik Forum
  2. Webmaster & Internet
  3. Entwicklung

RegEx: replace . with -

  • mjx_biz
  • 16. Januar 2012 um 13:03
  • Unerledigt
  • mjx_biz
    13
    mjx_biz
    Mitglied
    Reaktionen
    17
    Punkte
    1.772
    Beiträge
    340
    • 16. Januar 2012 um 13:03
    • #1

    Hi,

    bin nicht gerade der RegExperte (oh, Wortwitz :o) und hab mich auch schon ohne Erfolg an http://gskinner.com/RegExr/ probiert. Porblem ist folgendes:

    Ich habe eine HTML-Datei mit IDs wie:

    HTML
    <span id="listing0.title.moreinfo">bla</span>


    Es gibt aber auch IDs, in denen kein Punkt vorkommt:

    HTML
    <span id="listing0">bla</span>


    Meine Frage:
    Wie kann ich alle "." in den ID-Strings durch "-" ersetzen? Die IDs ohne Punkt sollen unverändert bleiben.

    [edit]
    Finden tu ich die Einträge übrigens, aber das hilft mir nicht viel :D. Geht sicher auch einfacher, aber das is meine derzeitige Lösung:

    Code
    /id="([^']+)"/gi


    [/edit]

    Wird das Internet eigentlich leichter, wenn man sich da was runterlädt?!

    4 Mal editiert, zuletzt von mjx_biz (16. Januar 2012 um 13:53)

  • madhias
    3
    madhias
    Mitglied
    Punkte
    55
    Beiträge
    11
    • 16. Januar 2012 um 14:22
    • #2

    glaub nicht, dass das was du willst geht (zumindest nicht mit diesem tool). ne begründung hab ich dafür auch, du kannst bei einem quantifier mit der replace group immer nur auf den letzten string zugreifen der gematcht wurde (ich hoffe das war jetzt so halbwegs verständlich)

    eine möglichkeit wäre den replacer eingie male drüber laufen zu lassen mit ettwas ähnlichem wie:
    suche:

    Code
    (id=")([\w\d-]+)(\.)([\w\d\.]+")

    replace

    Code
    $1$2-$4

    aus was schöneres oder besseres bin ich auf die schnelle nicht gekommen, ich hoffe es hilft dir

  • mjx_biz
    13
    mjx_biz
    Mitglied
    Reaktionen
    17
    Punkte
    1.772
    Beiträge
    340
    • 16. Januar 2012 um 14:25
    • #3

    Das mit den Groups is mir beim Herumprobieren aufgefallen, hab allerdings auf eine Lösung gehofft :D.

    Mehrere Durchläufe sind vielleicht eine Option, danke auf jeden Fall =)!

    Wird das Internet eigentlich leichter, wenn man sich da was runterlädt?!

  • mjx_biz
    13
    mjx_biz
    Mitglied
    Reaktionen
    17
    Punkte
    1.772
    Beiträge
    340
    • 16. Januar 2012 um 16:03
    • #4

    Hat mit Eclipse und 4 Durchläufen perfekt funktioniert, danke =)!

    Wird das Internet eigentlich leichter, wenn man sich da was runterlädt?!

  • Maximilian Rupp 27. Dezember 2024 um 00:26

    Hat das Thema aus dem Forum Programmieren nach Entwicklung verschoben.

Jetzt mitmachen!

Sie haben noch kein Benutzerkonto auf unserer Seite? Registrieren Sie sich kostenlos und nehmen Sie an unserer Community teil!

Benutzerkonto erstellen Anmelden

Tags

  • regex

Rechtliches

Impressum

Datenschutzerklärung