Register for your free account! | Forgot your password?

Go Back   elitepvpers > The Black Market > Other Trading > Coders Trading
You last visited: Today at 08:20

  • Please register to post and access all features, it's quick, easy and FREE!

Advertisement



[S] Linkfilter in Java [B] 10€ PSC

Discussion on [S] Linkfilter in Java [B] 10€ PSC within the Coders Trading forum part of the Other Trading category.

Reply
 
Old   #1
 
elite*gold: 0
Join Date: Mar 2010
Posts: 81
Received Thanks: 14
Red face [S] Linkfilter in Java [B] 10€ PSC

Hallo,

ich suche einen Coder der mir ein kleines Programm schreibt welches mittels Regular Expression, Links aus html Strings filtert.

zB:

String 1 = <A HREF="http://www.google.com">Google </A>

Ausgabe: "www.google.com"


Für mehr Informationen bitte per PM melden.



LG
lolmatze is offline  
Old 12/12/2012, 21:18   #2 Trade Status: Unverified(?)
 
NotEnoughForYou's Avatar
 
elite*gold: 0
Join Date: Jun 2010
Posts: 3,406
Received Thanks: 2,024
Code:
import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;


public class LinkFilter {
	private String link;
	
	public LinkFilter(String in) {
		this.link = in;		
	}
	
	public String getLink() {
		int startPos = this.link.indexOf("\"");
		int endPos = this.link.indexOf("\"", startPos + 1);
		
		return(this.link.substring(startPos + 1, endPos));
	}
	
	public static void main(String[] args) {
		
		System.out.println("Link eingeben");
		
		BufferedReader in = new BufferedReader(new InputStreamReader(System.in));
		
		try {
			String link = in.readLine();
			LinkFilter filter = new LinkFilter(link);
			
			System.out.println(filter.getLink());
		} 
		catch (IOException e) {
			e.printStackTrace();
		}		
	}
}
bsp:
<a href="http://www.ne4y.de">NE4Y</a>

-->
Code:
http://www.ne4y.de
ist zwar nicht direkt über Regex gemacht aber so gehts auch.
NotEnoughForYou is offline  
Thanks
1 User
Old 12/12/2012, 22:56   #3 Trade Status: Unverified(?)
 
Viper3001's Avatar
 
elite*gold: 0
Join Date: Sep 2007
Posts: 234
Received Thanks: 321
@NotEnoughForYou
Das Beispiel das du gepostet hast würde jedes html attribut auch mit ausgeben z.B. id="blubb"

Glaube auch das deine Variante so nicht genau gewünscht war, da es auch kein regex verwendet, außerdem würde er bei dir nur den 1. Gefundenen eintrag ausgeben und nicht eine Liste aller Links. Seih mir nicht böse und siehe das bitte als konstruktive Kritik


So Zum Problem des Threadstarters:
Habe mich ein wenig schlau gemacht und auch diese Seite hier als Hilfe verwendet:

Empfehle die Seite auch da ich sie selber häufiger verwende, wenn es um Java geht.

Habe einen Beispielcode geschrieben, der bei mir soweit funktioniert hat. Wenn es damit noch Probleme geben sollte meld dich hier oder per pm.

Code:
import java.util.ArrayList;
import java.util.List;

/**
 * Eine Beispielklasse zum Filtern von Links aus einer html-Seite
 * 
 * 12.12.2012
 * 
 * @author Shiru
 * 
 */
public class ExampleReg {

	/**
	 * Macht bisher nix
	 */
	public ExampleReg() {

	}

	/**
	 * Mit hilfe von RegEx wird ein pattern erstellt was zum Filter von Links
	 * innerhalb einer html seite verwendet werden kann. Spezieller filtert er
	 * alle Links innerhalb eines href-Attributes
	 * 
	 * @param text der zu filternde Text
	 * @return eine Liste aller gefundenen Links
	 */
	public List<String> filterAllHref(String text) {
		String pattern_regex = "(.+?)(href=\")(.+?)(\".*)";

		List<String> stringlist = new ArrayList<String>();

		String temp_str = "";
		do {
			temp_str = text.replace("\n", "").replace("\r", "")
					.replaceAll(pattern_regex, "$3");

			if (temp_str != "") {
				stringlist.add(temp_str);
			}
			text = text.replace("href=\"" + temp_str + "\"", "");
		} while (text.contains("href=\""));

		return stringlist;
	}

	/**
	 * Erstellt ein ExampleReg-Objekt und Filtert mit dessen Hilfe alle
	 * enthaltenden Links aus.
	 * 
	 * @param args
	 *            wird nicht verwendet
	 */
	public static void main(String[] args) {

		String text = "<a href=\"http://www.blubb.de\" />\n\r"
				+ "    <h1 id=\"header1\">asdfhref</h1>\n\r\n\r"
				+ "<a href=\"http://www.google.de\" />\n\r";

		List<String> stringlist = new ExampleReg().filterAllHref(text);
		for (String blubb : stringlist) {
			System.out.println(blubb);
		}
	}

}
Wenns dir soweit geholfen hat, die Psc bitte per pm ;D


MfG

Edit: Die Bedingung der While noch ein wenig angepasst. Hoffe jetzt is allet drinne
Viper3001 is offline  
Thanks
2 Users
Old 12/13/2012, 15:54   #4 Trade Status: Unverified(?)
 
NotEnoughForYou's Avatar
 
elite*gold: 0
Join Date: Jun 2010
Posts: 3,406
Received Thanks: 2,024
Quote:
Originally Posted by Viper3001 View Post
@NotEnoughForYou
Das Beispiel das du gepostet hast würde jedes html attribut auch mit ausgeben z.B. id="blubb"

Glaube auch das deine Variante so nicht genau gewünscht war, da es auch kein regex verwendet, außerdem würde er bei dir nur den 1. Gefundenen eintrag ausgeben und nicht eine Liste aller Links. Seih mir nicht böse und siehe das bitte als konstruktive Kritik


So Zum Problem des Threadstarters:
Habe mich ein wenig schlau gemacht und auch diese Seite hier als Hilfe verwendet:

Empfehle die Seite auch da ich sie selber häufiger verwende, wenn es um Java geht.

Habe einen Beispielcode geschrieben, der bei mir soweit funktioniert hat. Wenn es damit noch Probleme geben sollte meld dich hier oder per pm.

Code:
import java.util.ArrayList;
import java.util.List;

/**
 * Eine Beispielklasse zum Filtern von Links aus einer html-Seite
 * 
 * 12.12.2012
 * 
 * @author Shiru
 * 
 */
public class ExampleReg {

	/**
	 * Macht bisher nix
	 */
	public ExampleReg() {

	}

	/**
	 * Mit hilfe von RegEx wird ein pattern erstellt was zum Filter von Links
	 * innerhalb einer html seite verwendet werden kann. Spezieller filtert er
	 * alle Links innerhalb eines href-Attributes
	 * 
	 * @param text der zu filternde Text
	 * @return eine Liste aller gefundenen Links
	 */
	public List<String> filterAllHref(String text) {
		String pattern_regex = "(.+?)(href=\")(.+?)(\".*)";

		List<String> stringlist = new ArrayList<String>();

		String temp_str = "";
		do {
			temp_str = text.replace("\n", "").replace("\r", "")
					.replaceAll(pattern_regex, "$3");

			if (temp_str != "") {
				stringlist.add(temp_str);
			}
			text = text.replace("href=\"" + temp_str + "\"", "");
		} while (text.contains("href=\""));

		return stringlist;
	}

	/**
	 * Erstellt ein ExampleReg-Objekt und Filtert mit dessen Hilfe alle
	 * enthaltenden Links aus.
	 * 
	 * @param args
	 *            wird nicht verwendet
	 */
	public static void main(String[] args) {

		String text = "<a href=\"http://www.blubb.de\" />\n\r"
				+ "    <h1 id=\"header1\">asdfhref</h1>\n\r\n\r"
				+ "<a href=\"http://www.google.de\" />\n\r";

		List<String> stringlist = new ExampleReg().filterAllHref(text);
		for (String blubb : stringlist) {
			System.out.println(blubb);
		}
	}

}
Wenns dir soweit geholfen hat, die Psc bitte per pm ;D


MfG

Edit: Die Bedingung der While noch ein wenig angepasst. Hoffe jetzt is allet drinne
Bin davon ausgegangen, dass die Eingabe genausp aussieht wie in seinem Bsp.. Da das ganze aber vermutlich eh eine Hausaufgabe war hat sich das bestimmt erledigt.

Keine Sorge man lernt doch aus Kritik ;-). Java ist sowieso nicht mein Spezialgebiet :-).
NotEnoughForYou is offline  
Thanks
1 User
Old 12/16/2012, 00:17   #5 Trade Status: Unverified(?)
 
Viper3001's Avatar
 
elite*gold: 0
Join Date: Sep 2007
Posts: 234
Received Thanks: 321
Falls du fragen in der Richtung hast kannste dich ja eh bei mir melden.

Davon abgesehen war der Themenstarter seit der Anfrage wohl nimma online. Mal abwarten, ob er sein Angebot auch einhält


MfG
Viper3001 is offline  
Thanks
1 User
Reply


Similar Threads Similar Threads
[JAVA Error] Could not create the java virtual machine
07/21/2013 - Technical Support - 10 Replies
Schönen Abend! Leider hat es sich aus einem unerfindlichen Grund ergeben, dass sobald ich die Minecraft.exe starten will die Errormeldung kommt. Die Tips auf Minecraft.net habe ich schon ohne Erfolg befolgt. Hoffe ihr könnt mir weiterhelfen... Mein PC:
[Java] Could not create the Java virtual machine
06/22/2011 - Minecraft - 1 Replies
hallo ihr minecraftler ^^ habe seit heute das problem das wenn ich minecraft starte original als auch cracked das diese fehlermeldung kommt: Java virtual machine Launcher Could not create the Java virtual machine



All times are GMT +1. The time now is 08:20.


Powered by vBulletin®
Copyright ©2000 - 2026, Jelsoft Enterprises Ltd.
SEO by vBSEO ©2011, Crawlability, Inc.
This site is protected by reCAPTCHA and the Google Privacy Policy and Terms of Service apply.

Support | Contact Us | FAQ | Advertising | Privacy Policy | Terms of Service | Abuse
Copyright ©2026 elitepvpers All Rights Reserved.