Witam mam problem z takim kodem . Powienien on szukać maili ,lecz tego nie robi. Jezli zmienie wyrazenie regularne na linki to dziala bez problemu .Widzi ktoś jakiś błąd?
import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
import java.io.PrintWriter;
import java.net.Socket;
import java.net.UnknownHostException;
import java.util.ArrayList;
/**
*
* @author Blizzard
*/
public class niuchacz extends Thread {
static int getLengthOfTask() {
throw new UnsupportedOperationException("Not yet implemented");
}
private String pobierzStrone(String adres, int port, String sciezka) throws UnknownHostException, IOException {
PrintWriter netOut = null;
BufferedReader netIn = null;
try {
Socket s = new Socket(adres, port);
netIn = new BufferedReader(new InputStreamReader(s.getInputStream()));
netOut = new PrintWriter(s.getOutputStream());
netOut.println("GET " + sciezka + " HTTP/1.1");
netOut.println("HOST: " + adres);
netOut.println();
netOut.flush();
StringBuilder page = new StringBuilder();
String line;
while ((line = netIn.readLine()) != null) {
;
page.append(line).append("\n");
}
String pageStr = page.toString();
return pageStr;
} finally {
try {
if (netIn != null) {
netIn.close();
}
if (netOut != null) {
netOut.close();
}
} catch (IOException ex) {
System.out.println(ex);
}
}
}
public String[] znajdzLinki(String adres, int port, String sciezka) throws UnknownHostException, IOException {
String strona = pobierzStrone(adres, port, sciezka);
String[] tab1 = strona.split("[a-zA-Z0-9\\._%+-]+@[A-Z0-9.-]+\\.[a-zA-Z]{2,4}");
ArrayList<String> linki = new ArrayList<String>();
for (int i = 1; i < tab1.length; ++i) {
String[] tab2 = tab1[i].split("\"");
String lnk = tab2[0];
linki.add(lnk);
}
String[] linkiTab = linki.toArray(new String[1]);
return linkiTab;
}
@Override
public void run() {
}
}