Anzeige:
Ergebnis 1 bis 15 von 15

Thema: Java & regex

Baum-Darstellung

Vorheriger Beitrag Vorheriger Beitrag   Nächster Beitrag Nächster Beitrag
  1. #1
    Registrierter Benutzer
    Registriert seit
    08.07.2002
    Beiträge
    377

    Java & regex -> xml substring filtern

    Ich versuche gerade einen Xml-substring auf seine vollstaendigkeit zu pruefen.
    Der grund ist, dass ich von einem Stream lese der mir immer nur teilstuecke liefert.
    Dazu verwende ich einen StringBuffer um den XML-String zusammenzusetzen.

    Regex war noch nie wirklich meine Staerke, und deshalb bitte ich euch um eure Hilfe!
    Mein Momentaner stand ist folgender:
    Code:
    public class RegexTest {
    	public static void main(String[] args) {
    		// String regex = "<MSG(>|\\sID=\"\\d\">)[\\p{ASCII}[^(</MSG>)]]+";
    		// String regex = "<MSG(>|\\sID=\"\\d\">)[\\p{ASCII}&&[^</MSG>]]*";
    		// String regex = "[<MSG(>|\\sID=\"\\d\">)]{1}[\\p{ASCII}]+</MSG>";
    		   String regex = "<MSG>|<MSG\\sID=\"\\d\">[\\p{ASCII}]*</MSG>";
    		String message = "d><MSG><MSG ID=\"2\"><INFO><TYPE> 6 </TYPE></INFO></MSG><MSG ID=\"1\"><INFO><TYPE>7</TYPE></INFO></MSG></MSG>";
    		
    		System.out.println( "Regex: " + regex );
    		System.out.println( message + "\nmessage end\n" );
    		
    		Pattern pattern = Pattern.compile( regex );
    		Matcher matcher = pattern.matcher( message );
    		
    		while ( matcher.find() ) {
    			String m = matcher.group();
    			System.out.println( m );
    		}	
    	}
    }
    Nun ist die Ausgabe aber folgende:
    Code:
    <MSG>
    <MSG ID="2"><INFO><TYPE> 6 </TYPE></INFO></MSG><MSG ID="1"><INFO><TYPE>7</TYPE></INFO></MSG></MSG>
    und nicht
    Code:
    <MSG ID="2"><INFO><TYPE> 6 </TYPE></INFO></MSG>
    <MSG ID="1"><INFO><TYPE>7</TYPE></INFO></MSG>
    Ich hoffe mir kann dabei einer Helfen! Ich werde zwar weiter probieren, bin aber sicher ihr seit 100mal schneller als ich!

    mfg
    nul
    Geändert von nul (22-06-2006 um 18:42 Uhr)
    Amilo D - 2,8 Ghz - ATI Radeon 9000
    Debian GNU/Linux 3.1 (Sarge)

Lesezeichen

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • Anhänge hochladen: Nein
  • Beiträge bearbeiten: Nein
  •