Pattern.Match Suche: For Schleife einbinden und in Liste schreiben

Sinatra

Mitglied
Hey,

ich habe folgende Problemstellung:

Ich möchte verschiedene .txt Dateien, die denselben Aufbau haben, nach bestimmten Informationen durchsuchen, und diese Informationen dann per XStream als XML Format abspeichern, so dass man Sie in Excel aufrufen kann.

Ich bin bereits soweit, dass ich eine beliebige Datei aiswählen kann, die gewünschten Informationen per Pattern.match herausfiltere, und diese in einer ArrayListe ausgeben kann. Die Elemente stehen dann so da: [Ergebnis1, ERg.2, erg. 3 ...]

Nun weiß ich nicht, wie ich jedes Einzelne Ergebnis einem String übergeben kann, wenn jede Textdatei eine unterschiedliche Anzahl von Ergebnissen hat? Mit einer For Schleife in irgendeiner Form eventuell?

Und danach möchte ich dann von jedem String wiederum mit einer For Schleife und mit Substring das Ergebnis noch einmal unterteilen, für die spätere XML Ausgabe.

Hier der bisherige Code:
Java:
package FileWandler;
import java.io.*;
import java.util.ArrayList;
import java.util.List;
import java.util.regex.Matcher;
import java.util.regex.Pattern;

import javax.swing.JFileChooser;


public class Auslesen{
	
private static String inhalt=new String("");
private static String s = new String("");


public static String holePfad()  // Benutzereingabe speichert den Pfad der gewünschten Datei zwischen
{
    String pfad = null;
	JFileChooser fc = new JFileChooser();
    fc.setFileSelectionMode(JFileChooser.FILES_ONLY);
    int returnVal = fc.showOpenDialog(null);
    File f;
    if (returnVal == JFileChooser.APPROVE_OPTION)
    {
        f = fc.getSelectedFile();
        pfad = f.getPath();
    }
    return pfad;
}



public static String lesen(){  // Mit Hilfe des Pfads aus holePfad wird die Datei ausgelesen
	
	
	try {
		BufferedReader in = new BufferedReader(new FileReader(holePfad()));
		String zeile = null;
		while ((zeile = in.readLine()) != null) {
			
			inhalt = inhalt.concat(zeile); // Die Methode Auslesen.lesen gibt als String die Textdatei in einer langen Zeile zurück
		}
	
	
		
	} catch (IOException e) {
		e.printStackTrace();
		
	}
	
	return inhalt;
	}

	

public static List<String> felderfilter() {  // Hier filtere ich die Datei und sie wird als Liste<String> Returned
	 s = Auslesen.lesen(); // Hier wird der String eingelesen
	 Matcher matcher = Pattern.compile( "\\d?\\d?\\d?\\d?\\d\\p{Blank}..\\p{Blank}\\d\\p{Blank}\\p{Upper}\\p{Upper}\\p{Upper}..................................................\\p{Upper}\\p{Upper}\\p{Blank}.").matcher( ss );
	
	final List<String> result = new ArrayList<String>();
	while (matcher.find()) {
	    result.add(matcher.group());
	}
	return result;
	}


		public static void main (String[] args) {
			
		
		}

}




Ich habe es schon mal mit dieser For schleife versucht ( probeweise als Konsolenausgabe, da ich nicht weiß wie ich in eine Liste schreibe)

Java:
for (int i = 0; i < felderfilter().size(); i = i + 1) {
			
			System.out.println(felderfilter().get(i));

Da hat er auch jedes einzelne Ergebnis ausgegeben, jedoch hat er vor JEDEM Ergebnis 2(!) mal HOLEPFAD() aufgerufen.

Ich stecke nun fest.

Danke soweit!
 

Timothy Truckle

Top Contributor
Ich möchte verschiedene .txt Dateien, die denselben Aufbau haben, nach bestimmten Informationen durchsuchen, und diese Informationen dann per XStream als XML Format abspeichern, so dass man Sie in Excel aufrufen kann.
Wie geanu soll denn dein XML-File aussehen. Hast Du schon 'ne XSD oder wenigstens eine DTD dafür erzeugt?
Ich habe es schon mal mit dieser For schleife versucht ( probeweise als Konsolenausgabe, da ich nicht weiß wie ich in eine Liste schreibe)
Java:
for (int i = 0; i < felderfilter().size(); i = i + 1) {			
			System.out.println(felderfilter().get(i));
Da hat er auch jedes einzelne Ergebnis ausgegeben, jedoch hat er vor JEDEM Ergebnis 2(!) mal HOLEPFAD() aufgerufen.
Bist Du Dir im klaren darüber, wie eine
Code:
for
anweisung funktioniert?
Was meinst Du wie oft der Teil
Code:
i < felderfilter().size()
abgearbeitet wird?

Und allein die Tatsache, dass
Code:
felderfilter()
innerhalb der Schleife benutzt wird sollte Dich zum Nachdenken anregen: muss die Liste wirklich bei jedem Schleifendurchlauf aktualisiert werden?

bye
TT
 

Timothy Truckle

Top Contributor
Und wie mache ich es besser? Bezogen auf die IF Schleife
in dem Du
den Rückgabewert der Methode vor der Schleife einer lokalen Variable zuweist und diese in der Schleife verwendest. Deine IDE kann das übrigens automatisch z.B. Eclipse:
Methodenname inklusive
Code:
()
markieren <ctrl><1>->"extract local variable (replace all occurences)"

bye
TT
 
Ähnliche Java Themen
  Titel Forum Antworten Datum
mihe7 equals und instanceOf pattern matching Allgemeine Java-Themen 9
L Pattern Eventhandler Allgemeine Java-Themen 5
EinNickname9 Best Practice Singleton und Singleton mit Instanz zu anderer Klasse -Pattern Allgemeine Java-Themen 30
Z MVC Pattern - sinnvolle Integration Allgemeine Java-Themen 6
J Meinung zum verwendeten Design Pattern Allgemeine Java-Themen 4
Kirby.exe Filename nach bestimmtem Pattern durchsuchen Allgemeine Java-Themen 5
Meeresgott Best Practice "Spezifisches" Factory Pattern ? Allgemeine Java-Themen 1
H Strategy Pattern - changeColor() Methode - input rgd oder hex einlesen Allgemeine Java-Themen 1
M Vaadin MVP Pattern Allgemeine Java-Themen 1
N Java MVC Pattern richtig anwenden Allgemeine Java-Themen 24
M OOP Design Pattern - "extends Observable implements Observer" Allgemeine Java-Themen 0
K Factory Pattern: Mit Generics umgehen Allgemeine Java-Themen 6
perlenfischer1984 Welches Design Pattern ist geegneit. Allgemeine Java-Themen 7
perlenfischer1984 Hilfe bei Design (Pattern) Allgemeine Java-Themen 5
J Compilerfehler bis in java.util.regex.Pattern... Allgemeine Java-Themen 2
B MVC-Pattern größeres Beispiel Allgemeine Java-Themen 16
GreenTeaYT Verstehe nicht ganz das Observer Pattern in einer Arrayliste? Allgemeine Java-Themen 3
L Erste Schritte Java Date Format Pattern bestimmten Allgemeine Java-Themen 2
D Pattern mit Pattern vergleichen Allgemeine Java-Themen 3
D OOP Design Pattern für GUI - Datenbank Anwendung Allgemeine Java-Themen 1
S Hilfe bei geeignetem Pattern (Decorierer) Allgemeine Java-Themen 2
F Welches Design Pattern? Allgemeine Java-Themen 3
J Pattern aus String entfernen Allgemeine Java-Themen 2
D Variablen zur Laufzeit global speichern (Registry Pattern?) Allgemeine Java-Themen 6
Rudolf State Pattern als Enum? Allgemeine Java-Themen 10
M massenhaft verschiedene Date-Pattern Allgemeine Java-Themen 3
Guybrush Threepwood Pattern gesucht: Punkt ohne Leerzeichen dahinter Allgemeine Java-Themen 3
turmaline OOP Decorater Pattern für Varifikationsverhalten Allgemeine Java-Themen 13
T HTML Tag Position mittels Pattern ermitteln Allgemeine Java-Themen 7
X Datentypen Prozentualer Abgleich zwischen 2 Strings (Pattern?) Allgemeine Java-Themen 3
H Pattern.compile Syntax Allgemeine Java-Themen 15
B RegEx: (Um-)formulieren eines Pattern zur Identifizierung komplexer URLs Allgemeine Java-Themen 7
D [Drag&Drop] Design-Pattern-Frage Allgemeine Java-Themen 4
T Pattern für Benutzer-Gruppen, RMI Allgemeine Java-Themen 5
E Super erzwingen, konzept/pattern gesucht. Allgemeine Java-Themen 8
H Problem mit der Klasse Pattern - Regulärer Ausdruck Allgemeine Java-Themen 2
Eldorado Meinung zu einem abgewandelten MVC-Pattern Allgemeine Java-Themen 2
R Matcher - Pattern mit belibigem Anfang Allgemeine Java-Themen 2
H Bestimmten String mit Pattern und Matcher herauslesen => kein erfolg Allgemeine Java-Themen 9
I Pattern zum Erweitern existierender Objekte Allgemeine Java-Themen 4
I Template Method pattern mit "geschützten Methoden" Allgemeine Java-Themen 5
T Pattern: Passive View Allgemeine Java-Themen 2
K Verständnisprobleme bei Observer-Pattern mit größerem Datenmodell Allgemeine Java-Themen 32
T Pattern: Greedy, Reluctant, Possessive Allgemeine Java-Themen 4
S Hilfe bei Pattern Allgemeine Java-Themen 5
N Registry Pattern Allgemeine Java-Themen 7
Tandibur Denkfehler bei Pattern.matches? Allgemeine Java-Themen 3
Tandibur pattern dynamisch vorkompilieren Allgemeine Java-Themen 9
A Observer Pattern: feuern bei neuer Referenz-Zuweisung? Allgemeine Java-Themen 8
N Pattern Allgemeine Java-Themen 11
Iron Monkey Pattern - Matcher - Problem Allgemeine Java-Themen 3
ruutaiokwu welches design pattern? frage an die oo-experten unter euch... Allgemeine Java-Themen 3
G Accordion Design Pattern Frage Allgemeine Java-Themen 2
hdi Hilfe beim Design (Stichwort OO, Pattern, ...) Allgemeine Java-Themen 11
U Verständnisschwierigkeiten Observer Pattern Allgemeine Java-Themen 18
H2SO3- String(pattern) von SimpleDateFormat auslesen Allgemeine Java-Themen 7
M Problem mit Pattern Allgemeine Java-Themen 3
N Welches design pattern? Allgemeine Java-Themen 8
B Pattern gesucht, Programm Optionen, Casten vermeiden Allgemeine Java-Themen 3
D Welches Pattern kann ich nutzen? Allgemeine Java-Themen 9
J Suche regex-Pattern fuer Liste von Zahlen zwischen 0-100 Allgemeine Java-Themen 6
G Sequenzdiagramm Dao Pattern Allgemeine Java-Themen 3
D Observer/Observable Pattern vs. Listener-Konzept Allgemeine Java-Themen 4
S regex-Pattern Ausdruck negieren Allgemeine Java-Themen 2
J Pattern eines Textes Allgemeine Java-Themen 4
M Java Garbage Collector Frage (Singleton Pattern) Allgemeine Java-Themen 13
Y Pattern Problem Allgemeine Java-Themen 2
G UML-Diagramme mit DAO Pattern Allgemeine Java-Themen 7
S Pattern regex Allgemeine Java-Themen 2
G Composite, Design Pattern, printTree Allgemeine Java-Themen 42
J Regex Pattern Problem Allgemeine Java-Themen 12
P MVC Pattern Allgemeine Java-Themen 31
C Pattern für Kommunikation gesucht Allgemeine Java-Themen 3
G Frage zu MVC Pattern Allgemeine Java-Themen 6
J Pattern und Regex Allgemeine Java-Themen 2
L Wie Pattern anwenden um Cipher zu nutzen Allgemeine Java-Themen 2
S Singleton Pattern mit Generics Allgemeine Java-Themen 4
M MVC Design Pattern - Verständniss Fragen Allgemeine Java-Themen 3
F Typüberprüfung in Superklasse - geeignetes Pattern? Allgemeine Java-Themen 11
M Java Pattern hilfe Allgemeine Java-Themen 6
N Observer Pattern Allgemeine Java-Themen 2
G Problem mit MVC-Pattern (Controller als anonyme Unterklasse) Allgemeine Java-Themen 2
F Design Pattern zur Realisierung von Mehrfachvererbung? Allgemeine Java-Themen 8
M Pattern aus Properties Allgemeine Java-Themen 3
I Composite Pattern für Ausgabe von Ausdruck Allgemeine Java-Themen 3
G mit Pattern strings filtern ein kleines problemchen ;) Allgemeine Java-Themen 2
M nach einem Pattern splitten Allgemeine Java-Themen 2
F Composite Pattern in Java? Allgemeine Java-Themen 1
G problem mit dem observer pattern Allgemeine Java-Themen 3
C Matcher/Pattern ersetzten für JDK 1.3 Allgemeine Java-Themen 2
M Pattern: Summary of regex constructs: Backslash Allgemeine Java-Themen 2
G Scanner und Abbruchbedingung/Pattern Allgemeine Java-Themen 2
F suche im Classpath mit Pattern *.gif Allgemeine Java-Themen 16
G Frage zum Observer Pattern Allgemeine Java-Themen 4
D Design Pattern: Singleton Allgemeine Java-Themen 4
M Pattern, Matcher, Split Allgemeine Java-Themen 2
M Matcher-Klasse findet match nicht Allgemeine Java-Themen 6
T Nur innerhalb des regex-Match ersetzen Allgemeine Java-Themen 9
G signer information does not match signer information of. Allgemeine Java-Themen 3
M Best Match / Best Fit auf Strings Allgemeine Java-Themen 9

Ähnliche Java Themen

Neue Themen


Oben