URL: https://www.overclockers.at/coding-stuff/cganze_woerter_aus_textfile_auslesen_165512/page_2 - zur Vollversion wechseln!
http://www.galileocomputing.de/open...40001571F02E100
es ließe sich allerdings auch recht gut mit regulären ausdrücken rausfiltern, nur sind die am anfang wohl auch nicht so leicht zu verstehen
http://java.sun.com/j2se/1.5.0/docs...ex/Pattern.html
http://java.sun.com/j2se/1.5.0/docs...ex/Matcher.html
http://www.galileocomputing.de/open...40001561F013100
Code:import java.util.regex.*; public class Main { public static void main(String[] args) { String input = "****** PC NAME BEGIN ******\n"+ "Blaa fuer PC NAME ist gestartet worden\n"+ "Verbinde to PC NAME...\n"+ "System information for PC NAME:\n"+ "Uptime: 325446345 Tage 34343 Minuten....\n"+ "Pocessors:\n"+ "PATCHES Installed\n"+ "****** PC NAME ENDE ******\n"+ "****** PC NAME2 BEGIN ******\n"+ "Blaa fuer PC NAME2 ist gestartet worden\n"+ "Verbinde to PC NAME2...\n"+ "System information for PC NAME2:\n"+ "Uptime: A325446345 Tage 34343 Minuten....\n"+ "Pocessors:\n"+ "PATCHES Installed\n"+ "****** PC NAME2 ENDE ******\n"; String beginMarker = "^\\*{6} (.*?) BEGIN \\*{6}$"; String endMarker = "^\\*{6} (.*?) ENDE \\*{6}$"; String uptime = "^Uptime: (.*?)$"; Pattern p = Pattern.compile(beginMarker + ".*?" + uptime + ".*?"+ endMarker, Pattern.MULTILINE | Pattern.DOTALL); Matcher m = p.matcher(input); while (m.find()) { System.out.println("PC: "+ m.group(1)); System.out.println("uptime: "+ m.group(2)); System.out.println("===================="); } } }
Also für sowas würd ich entweder Perl verwenden oder wenn unbedingt ein C-code erzeugt werden soll "flex".
Also in Burschi's Fall hätte es schon funktionieren müssen, es kann nur ein Problem auftreten, wenn das gesuchte Wort am Ende des Puffers eingelesen wird (naja ... wenn du dir den Code anschaust siehst es eh sofort).Zitat von Luzandround wo ist das problem? (abgesehen davon, dass dort auch innerhalb der wörter gesucht wird)
Also wenn das nicht grade eine Programmier-Fleiszaufgabe ist, schreit das geradezu nach `grep`.
Zitat von COLOSSUSAlso wenn das nicht grade eine Programmier-Fleiszaufgabe ist, schreit das geradezu nach `grep`.
ich frag mich nur warum dieser thread schon 20 posts hat. die aufgabe ist in so gut wie jeder (skript) sprache mit file io in kürze lösbar 
Zitat von Luzandrogibt grep bei einem match nicht einfach die ganze zeile aus? mit awk sollte es gehen
Zitatalso ich wüsste jetzt nicht wie ich das einfacher anstellen könnte. Abgesehen davon wäre das dann ein array mit 1 Million zeichen *g*
overclockers.at v4.thecommunity
© all rights reserved by overclockers.at 2000-2025