Win Takajoshi: Teil eines Strings auslesen

Hallo zusammen!

Kurz zu meinem Problem:
Ich habe eine String, zum Beispiel: var string = "Mein Teststring ist sehr kurz, aber soll beschnitten werden."

Ich möchte nun einen Teil des Strings löschen und den Rest ausgeben.
Neue Ausgabe: "Mein Teststring soll beschnitten werden"
Also wurde der Teil "ist sehr kurz, aber" entfernt.

Wenn ich die JS-Funktionen slice(), substring() und substr() richtig verstanden hab, bekomm ich da immer den Teil, der entfernt wurde.
Ich möchte aber den alten String OHNE den entfernten.

Lösungsansatz:
Ich weiß ja "Angfangs"-Index und "End"-Index meines Suchstrings ( hier: "ist sehr kurz, aber").
Ich schneide also var string vom Index 0 bis "Anfang" und von "End" bis ans wahre Ende, und füge diese beiden Strings zusammen.

Das Problem ist nur, wenn ich mehrere verschiedene Teile von var string entfernen möchte, wird das ein extrem langer und unübersichtlich Code.

Jemand eine Idee, wie man das lösen könnte bzw. ob es vielleicht eine passende JS-Funktion gibt.
DANKE

  1. Hallo

    Ich möchte nun einen Teil des Strings löschen und den Rest ausgeben.
    Neue Ausgabe: "Mein Teststring soll beschnitten werden"
    Also wurde der Teil "ist sehr kurz, aber" entfernt.

    Wenn ich die JS-Funktionen slice(), substring() und substr() richtig verstanden hab, bekomm ich da immer den Teil, der entfernt wurde.
    Ich möchte aber den alten String OHNE den entfernten.

    je nach Aufgabenstellung könntest Du z.B. deine Zeichenkette auftrennen und wieder zusammenfügen.

    Freundliche Grüße

    Vinzenz

    1. je nach Aufgabenstellung könntest Du z.B. deine Zeichenkette auftrennen und wieder zusammenfügen.

      Das Problem mit split() und join() ist, das ich nie das selbe Trennzeichen hab.
      Die sind nämlich z.B. abhängig von der id meines div-containers.
      <div id="meinstring">
        <div id="1"></div>
        <div id="23"></div>
        <div id="3"></div>
        <div id="99"></div>
        <div id="5"></div>
        <div id="9"></div>
      </div>
      Und nun möchte ich die divs mit id 23 und 5 entfernen und den rest ins div "meinstring" schreiben.

      content = document.getElementById("meinstring").innerHTML;
      ... meine gesuchte Logik ...
      document.getElementById("meinstring").innerHTML = cutted_content

      1. Hallo

        je nach Aufgabenstellung könntest Du z.B. deine Zeichenkette auftrennen und wieder zusammenfügen.

        sag' ich doch: "je nach Aufgabenstellung"

        Das Problem mit split() und join() ist, das ich nie das selbe Trennzeichen hab.
        Die sind nämlich z.B. abhängig von der id meines div-containers.
        <div id="meinstring">
          <div id="1"></div>
          <div id="23"></div>
          <div id="3"></div>
          <div id="99"></div>
          <div id="5"></div>
          <div id="9"></div>
        </div>
        Und nun möchte ich die divs mit id 23 und 5 entfernen und den rest ins div "meinstring" schreiben.

        Statt mit innerHTML zu tricksen, solltest Du lieber an DOM-Methoden denken, siehe SELFHTML, node-Objekt.

        Freundliche Grüße

        Vinzenz

        1. Statt mit innerHTML zu tricksen, solltest Du lieber an DOM-Methoden denken, siehe SELFHTML, node-Objekt.

          Hi,

          Muss ich mal prüfen.
          Hab mit node-Objekt noch nie was gemacht.
          Werd ich mir mal anschauen.
          Klingt nach gutem Ansatz.

          Danke

          MfG
          WIn

      2. Hallo,

        noch eine Anmerkung,

        Die sind nämlich z.B. abhängig von der id meines div-containers.
        <div id="meinstring">
          <div id="1"></div>
          <div id="5"></div>
        </div>
        Und nun möchte ich die divs mit id 23 und 5 entfernen und den rest ins div "meinstring" schreiben.

        die Werte Deiner id-Attribute sind unzulässig.

        Freundliche Grüße

        Vinzenz