tutorials.de Buch-Aktion 05/2012
ERLEDIGT
JA
ANTWORTEN
4
ZUGRIFFE
2973
EMPFEHLEN
  • An Twitter übertragen
  • An Facebook übertragen
AUF DIESES THEMA
ANTWORTEN
  1. #1
    verena4 verena4 ist offline Mitglied
    Registriert seit
    Jul 2005
    Beiträge
    15
    Hallo

    ich habe ein kleines Problem mit der split() Methode.

    ich habe einen String:

    BLA+ABC+++TEST:?+420 326 853 386+TEST

    den möchte ich am Plus aufteilen. Aber nur bei den Pluszeichen die kein Fragezeichen davor haben.

    Bei dem String oben soll dann rauskommen:

    1. BLA
    2. ABC
    3.
    4.
    5. TEST:?+420 326 853 386
    6. TEST

    Bisher hab ichs so versucht:

    str.split("[^?]\\+")

    aber das funktioniert leider nicht so wie ich das will. Vielleicht kann mir jemand helfen.

    Viele Grüße

    Verena
     

  2. #2
    Registriert seit
    Jun 2002
    Ort
    Saarbrücken (Saarland)
    Beiträge
    9.886
    Blog-Einträge
    29
    Hallo!

    Das funktioniert einwandfrei:
    Code java:
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    
    /**
     * 
     */
    package de.tutorials;
     
    import java.util.Arrays;
     
    /**
     * @author Thomas.Darimont
     * 
     */
    public class StringSplitExample {
     
        /**
         * @param args
         */
        public static void main(String[] args) {
            String str = "BLA+ABC+++TEST:?+420 326 853 386+TEST";
            System.out.println(Arrays.toString(str.split("\\+")));
        }
     
    }

    Ausgabe:
    Code :
    1
    
    [BLA, ABC, , , TEST:?, 420 326 853 386, TEST]

    Gruß Tom
     
    Java rocks!
    How to become a good Java Programmer?
    Does IT in Java and .Net
    The only valid measurement of code quality: WTFs / minute
    Blog
    Xing
    Twitter

  3. #3
    BLOEBAUM BLOEBAUM ist offline Mitglied Gold
    Registriert seit
    Sep 2005
    Ort
    Kreis Herford
    Beiträge
    114
    Hallo Tom,

    der Split funktioniert in deinem Beispiel bestimmt einwandfrei.
    Die Fragestellung habe ich aber so verstanden:

    Ist es im Split möglich ein Ausschlusskriterium mitzugeben.
    Zitat von Verena: " Aber nur bei den Pluszeichen die kein Fragezeichen davor haben."

    In diesem Fall:
    Wenn vor dem Zeichen + das Zeichen ? steht soll der Split keine Trennung vornehmen.

    Ergebnis bei dir:

    [BLA, ABC, , , TEST:?, 420 326 853 386, TEST]

    gewolltes Ergebnis von Verena:


    [BLA, ABC, , , TEST:?+420 326 853 386, TEST]

    Gruß

    Harald
     

  4. #4
    Registriert seit
    Jun 2002
    Ort
    Saarbrücken (Saarland)
    Beiträge
    9.886
    Blog-Einträge
    29
    Hallo!

    ... das nächste mal sollte ich die Beiträge mal zuende lesen...
    Code java:
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    
    /**
     * 
     */
    package de.tutorials;
     
    import java.util.Arrays;
     
    /**
     * @author Thomas.Darimont
     * 
     */
    public class StringSplitExample {
     
        /**
         * @param args
         */
        public static void main(String[] args) {
            String str = "BLA+ABC+++TEST:?+420 326 853 386+TEST";
            //"[BLA, ABC, , , TEST:?+420 326 853 386, TEST]";
            System.out.println(Arrays.toString(str.split("(?<=[^\\?])\\+")));
        }
    }

    Ausgabe:
    Code :
    1
    
    [BLA, ABC, , , TEST:?+420 326 853 386, TEST]

    Gruß Tom
     
    Java rocks!
    How to become a good Java Programmer?
    Does IT in Java and .Net
    The only valid measurement of code quality: WTFs / minute
    Blog
    Xing
    Twitter

  5. #5
    verena4 verena4 ist offline Mitglied
    Registriert seit
    Jul 2005
    Beiträge
    15
    Hallo

    vielen, vielen Dank. Das ist genau das was ich gesucht habe.

    mfg

    Verena
     

Ähnliche Themen

  1. Regex für String.split(regex)
    Von anti43 im Forum Java
    Antworten: 3
    Letzter Beitrag: 22.11.10, 12:14
  2. [Perl] RegEx/Split Name; Vorname|TelNr1#TelNr2#TelNr3#...
    Von 0Flocky0 im Forum CGI, Perl, Python, Ruby, Power Shell
    Antworten: 3
    Letzter Beitrag: 02.04.10, 17:50
  3. Antworten: 3
    Letzter Beitrag: 26.08.09, 13:35
  4. Antworten: 1
    Letzter Beitrag: 21.01.08, 16:58
  5. Problem mit split()
    Von Kahmoon im Forum Javascript & Ajax
    Antworten: 4
    Letzter Beitrag: 08.03.07, 13:10