Java Regex feladattal nem bírok?
Házi feladatot nem tudom megcsinálni. Léci segíts.
Következő java programra lenne szükségem:
Beolvas egy fájlt(in.txt), amiben html kódok vannak.
Kiszedi belőle azokat a szavakat, amelyek a <name> és </name> tag-ek között szerepelnek, majd elmenti egy másik fájlba(out.txt) 1név/sor.
Köszi, ha segítesz.
Van nehany lehetseges buktato a feladatban amire erdemes figyleni:
1. buktato: a html kodban a <name> es az azt koveto </name> kulon sorban is lehet meg egy sorban is lehet, a szoveg kozte lehet tobb soros, esetleg egybe tagokkal a sorban, amit gondolom ki kene szedni es egy sorba rendezni mielott az outputot generalod.
2. buktato: egy sorban tobb name-tag par is lehet
3. buktato: lehetnek egymasba agyazott <name> tag parok.
4. buktato: lehet, hogy a html kod nincs jol formazva es vannak extra </name> tagok itt-ott a szovegben.
5, buktato: html tagokrol leven szo a tag barmely betuje lehet kis vagy nagybetu. A html-en belul ez nem okoz zavart a bongeszo szamara, viszont a java programodnak valoszinuleg a <NAME> es a <nAme> tagokat meg hasonlokat is el kell tudni csipnie.
Na ezekre jobb ha elore ratervezel, mert ha megvan a progid, akkor marha nehez tud lenni utolag valtoztatgatni.
Eddig jutottam:
import java.util.regex.Pattern;
import java.util.regex.Matcher;
import java.io.*;
public class readname
{
public static void main(String[] args)
throws IOException
{
Pattern p = Pattern.compile("<name>(.*)</name>",Pattern.DOTALL);
BufferedReader r = new BufferedReader(new FileReader("in.txt"));
String line;
while ((line = r.readLine()) != null )
{
Matcher m = p.matcher(line);
while (m.find())
{
System.out.println(m.group(1));
}
}
}
}
Arra nem tudok rájönni, hogy az eredményt ne kiírja, hanem elmentse az "out.txt"-be.
Meg valami RelativePath-t sem lenne rossz beépíteni. Azt sem tudom, hogyan kell.
Az általad írt problémák nem állnak fenn. A name, mindig 8 karakter és a helyén van egy sorban.
Kapcsolódó kérdések:
Minden jog fenntartva © 2024, www.gyakorikerdesek.hu
GYIK | Szabályzat | Jogi nyilatkozat | Adatvédelem | Cookie beállítások | WebMinute Kft. | Facebook | Kapcsolat: info(kukac)gyakorikerdesek.hu
Ha kifogással szeretne élni valamely tartalommal kapcsolatban, kérjük jelezze e-mailes elérhetőségünkön!