Thorsten F.: String durchsuchen

Hallo Leute,

ich habe einen String: idfherwohfkidod dsipdsjf safdpihf wpdf

Jetzt möchte ich diesen gerne splitten und zwar ab dem 50. Zeichen.
Wenn jetzt aber das 50. Zeichen in einem Wort mitten in einem Wort steht, möchte ich gerne das letzte Leerzeichen vor dem 50. Zeichen haben. Geht das? Und wenn ja, hat da jemand eine Idee?

  1. Hi,

    na ja, mach die Sache anders herum:
    1. Schritt: Aufteilen nach Wörtern (musst mal mit Satzzeichen etwas rumspielen, das hier ist die einfache Variante mit Leerzeichen):
    parts = meinString.split(" ");

    2. Durchlaufe dieses Array und füge das Ergebnis auf den Ergebnisstring, sofern inklusive des nächsten Wortes noch keine 50 Zeichen überschritten sind:
    var kurzString = "";
    i=0;
    while ((i < parts.length()) && ((kurzString.length() + parts[i].length()) < 50)) {
       kurzString += parts[i];
       i++
    }

    MfG
    Rouven

    --
    -------------------
    ss:) zu:) ls:& fo:) de:< va:{ ch:? sh:) n4:( rl:? br:$ js:| ie:) fl:(
    1. Hallo Rouven.

      while ((i < parts.length()) && ((kurzString.length() + parts[i].length()) < 50)) {

      Eine Methode length() ist mir nicht bekannt, eine Eigenschaft length dagegen schon.

      Einen schönen Mittwoch noch.

      Gruß, Ashura

      --
      sh:( fo:} ch:? rl:( br: n4:~ ie:{ mo:| va:) de:> zu:} fl:( ss:) ls:[ js:|
      mathbr:del.icio.us/ mathbr:w00t/
      1. Ok, habe es bereits hinbekommen, so dass ich aus einem String zwei gemacht habe! Nur stellt sich jetzt die Frage wie ich einen Umbruch einfügen kann.
        Ich arbeite mit document.createTextNode und irgendwie frisst der mein <br> nicht.

      2. Eine Methode length() ist mir nicht bekannt, eine Eigenschaft length dagegen schon.

        Och joa, was soll man sich denn noch alles merken? Solange man sich nicht mal in allen Programmiersprachen einigt was, wann und bei wem Eigenschaft oder Methode ist, ob es length oder size heißt, weigere ich mich das immer alles im Kopf zu haben...
        Für sowas hat man Compiler/Debugger...

        MfG
        Rouven

        --
        -------------------
        ss:) zu:) ls:& fo:) de:< va:{ ch:? sh:) n4:( rl:? br:$ js:| ie:) fl:(
        1. Hallo Rouven.

          Für sowas hat man Compiler/Debugger...

          Oder einfach eine JS-Konsole.

          Einen schönen Mittwoch noch.

          Gruß, Ashura

          --
          sh:( fo:} ch:? rl:( br: n4:~ ie:{ mo:| va:) de:> zu:} fl:( ss:) ls:[ js:|
          mathbr:del.icio.us/ mathbr:w00t/
  2. Jetzt möchte ich diesen gerne splitten und zwar ab dem 50. Zeichen.
    Wenn jetzt aber das 50. Zeichen in einem Wort mitten in einem Wort steht, möchte ich gerne das letzte Leerzeichen vor dem 50. Zeichen haben. Geht das? Und wenn ja, hat da jemand eine Idee?

    Ganz simpel mit indexOf()

    var string = '......';
    var cut = string.indexOf(' ', 50);
    if(cut == -1) cut = string.length;

    Struppi.