java-forum.org - Java programmieren aus Leidenschaft
Java 6 Einstieg und professioneller Einsatz
Alter Preis: 34,90 EUR
Jetzt: 0,00 EUR

zzgl. Versandkosten

Zurück   java-forum.org - Java programmieren aus Leidenschaft > Java - Programmierung > Allgemeine Java-Themen

Allgemeine Java-Themen Allgemeine Themen, die nicht in andere Fachforen und nicht zu den Java Basics passen

Antwort     Ist dieses Thema erledigt?
Themen-Optionen Thema durchsuchen Ansicht
Alt 02.08.2011, 10:08   #1 (permalink)
Neuer Benutzer
Bit
 
Registriert seit: 19.07.2011
Fachbeiträge: 5
Abgegebene Danke: 0
Erhielt 0 Danke für 0 Beiträge
Standard RegEx: (Um-)formulieren eines Pattern zur Identifizierung komplexer URLs

Guten Morgen,

hier im Forum/im Internet gab es schon einige Ansätze Pattern zu definieren, um aus einem String URLs rauszufiltern. Da die Lösungen für mich nicht zufriedenstellend waren und gerade auch weil ich hier und hier zwei Blogeinträge gefunden habe, von Menschen die behaupten gute Pattern generiert zu haben würde ich das Forum bitten mir zu helfen diese JAVA-Konform umzuformulieren, da sie entsprechend der C-Notation formuliert wurden und ich das leider auch nach dem Studieren diverser Internetseiten nicht umgesetzt bekomme.

Viele Grüße und vielen Dank schonmal vorab,
bbh
bierbauchhase ist offline  
Bei Google nach dem markiertem Wort suchen Bei Wikipedia nach dem markiertem Wort suchen Im Forum nach dem markiertem Wort suchen
Mit Zitat antworten
Alt 04.08.2011, 08:46   #2 (permalink)
Neuer Benutzer
Bit
Themenstarter
 
Registriert seit: 19.07.2011
Fachbeiträge: 5
Abgegebene Danke: 0
Erhielt 0 Danke für 0 Beiträge
Hallo,
mir konnte zwar bisher noch keiner hier zur Seite stehen aber ich versuche es dennoch erneut.
Das Pattern sieht inzw. so aus:
Java Code: Quelltext in neuem Fenster öffnen
1
2
3
String regex =  "(?i)\\b((?:https?://|www\\d{0,3}[.]|[a-z0-9.\\-]+[.][a-z]{2,4}/)(?:[^\\s()"+
                "<>]+|\\(([^\\s()<>]+|(\\([^\\s()<>]+\\)))*\\))+(?:\\(([^\\s()<>]+|(\\([^\\s()"+  
                "<>]+\\)))*\\)|[^\\s`!()\\[\\]{};:'\".,<>?«»“”‘’]))";

Jetzt besteht jedoch das Problem, dass ein Link der über eine Zeile hinaus geht nicht erkannt wird. Irgendwelche Ideen an dieser Stelle? Pattern.compile(regex, Pattern.MULTILINE); - hilft leider nicht
Grüße,
bbh.

PS Habe die selbe Anfrage inzw. auch im Tutorials - Forum gestartet.

Geändert von bierbauchhase (04.08.2011 um 08:52 Uhr)
bierbauchhase ist offline  
Bei Google nach dem markiertem Wort suchen Bei Wikipedia nach dem markiertem Wort suchen Im Forum nach dem markiertem Wort suchen
Mit Zitat antworten
Alt 04.08.2011, 08:57   #3 (permalink)
Stammbenutzer
Kilobyte
 
Benutzerbild von RySa
 
Registriert seit: 11.07.2011
Fachbeiträge: 245
Abgegebene Danke: 5
Erhielt 28 Danke für 28 Beiträge
adde zu dem Regex ein (?s) am Anfang, sollte das Problem beheben mit Zeilenumbrüchen

EDIT: Oops habe nicht zu ende gelesen ^^ (?s) ist eigentlich das gleiche wie MULTILINE, versuche es aber vielleicht trotzdem. Bei mir hat es nie damit Probleme gegeben

EDIT 2: Manchmal rede ich so ein Unsinn ^^...(?s) == Pattern.DOTALL. Und die Bedeutung:

Zitat:
"The regular expression . matches any character except a line terminator unless the DOTALL flag is specified. "
Das sollte dein Problem beheben

PS. Du brauchst das . nicht mit [] umschließen (es sei dem das sollte dir zur Übersicht dienen :P)
__________________
Ich Trinke um meine Probleme zu ertränken aber diese verdammten Bast..e können schwimmen

Geändert von RySa (04.08.2011 um 09:05 Uhr)
RySa ist offline  
Bei Google nach dem markiertem Wort suchen Bei Wikipedia nach dem markiertem Wort suchen Im Forum nach dem markiertem Wort suchen
Mit Zitat antworten
Alt 04.08.2011, 09:00   #4 (permalink)
Java-Forum Team
Moderator
 
Benutzerbild von SlaterB
 
Registriert seit: 13.11.2005
Fachbeiträge: 31.651
Abgegebene Danke: 0
Erhielt 2.566 Danke für 2.527 Beiträge
da hilft wohl nur die Zeilenumbrüche vorher zu entfernen
__________________
Hansa wird Meister.
SlaterB ist offline  
Bei Google nach dem markiertem Wort suchen Bei Wikipedia nach dem markiertem Wort suchen Im Forum nach dem markiertem Wort suchen
Mit Zitat antworten
Alt 04.08.2011, 10:45   #5 (permalink)
Stammbenutzer
Megabyte
 
Registriert seit: 01.05.2008
Fachbeiträge: 2.009
Abgegebene Danke: 8
Erhielt 123 Danke für 122 Beiträge
also ich filter mit dem ?s auch meine mutliline-kommentare, funktioniert wunderbar
(?s)/\\*((.*?\\*/)|(.*))

für kommentare der art:
/* text
geht weiter */
__________________
Wer aufhört, besser zu werden, hat aufgehört, gut zu sein. (Philip Rosenthal)
diggaa1984 ist offline  
Bei Google nach dem markiertem Wort suchen Bei Wikipedia nach dem markiertem Wort suchen Im Forum nach dem markiertem Wort suchen
Mit Zitat antworten
Alt 05.08.2011, 11:48   #6 (permalink)
Neuer Benutzer
Bit
Themenstarter
 
Registriert seit: 19.07.2011
Fachbeiträge: 5
Abgegebene Danke: 0
Erhielt 0 Danke für 0 Beiträge
Zitat: SlaterB
Beitrag anzeigen
da hilft wohl nur die Zeilenumbrüche vorher zu entfernen
So hab ich es jetzt auch gemacht, danke.
Ergebnisse sind bisher sehr befriedigend.
bierbauchhase ist offline  
Bei Google nach dem markiertem Wort suchen Bei Wikipedia nach dem markiertem Wort suchen Im Forum nach dem markiertem Wort suchen
Mit Zitat antworten
Alt 06.08.2011, 11:22   #7 (permalink)
Stammbenutzer
Kilobyte
 
Benutzerbild von RySa
 
Registriert seit: 11.07.2011
Fachbeiträge: 245
Abgegebene Danke: 5
Erhielt 28 Danke für 28 Beiträge
Benutze doch einfach das (?s) (oder hat es nicht geklappt damit) ?
__________________
Ich Trinke um meine Probleme zu ertränken aber diese verdammten Bast..e können schwimmen
RySa ist offline  
Bei Google nach dem markiertem Wort suchen Bei Wikipedia nach dem markiertem Wort suchen Im Forum nach dem markiertem Wort suchen
Mit Zitat antworten
Alt 06.08.2011, 14:00   #8 (permalink)
Java-Forum Team
Moderator
 
Benutzerbild von SlaterB
 
Registriert seit: 13.11.2005
Fachbeiträge: 31.651
Abgegebene Danke: 0
Erhielt 2.566 Danke für 2.527 Beiträge
das hilft nur bei .*, wovon es relativ wenige Abschnitte in dem Mega-RegEx gibt, daher vielleicht nicht so nützlich,
allein bei \\s sowie auch ^\\s schon unbrauchbar? na kann man alles testen
__________________
Hansa wird Meister.
SlaterB ist offline  
Bei Google nach dem markiertem Wort suchen Bei Wikipedia nach dem markiertem Wort suchen Im Forum nach dem markiertem Wort suchen
Mit Zitat antworten
Antwort     Ist dieses Thema erledigt?

Stichworte
regex , url , url-pattern

Themen-Optionen Thema durchsuchen
Thema durchsuchen:

Erweiterte Suche
Ansicht

Ähnliche Themen
Thema Autor Forum Antworten Letzter Beitrag
Regex: Fertige URLS aus Javascript Jaskur Allgemeine Java-Themen 3 04.07.2011 16:38
Regex: URLS aus CSS Jaskur Allgemeine Java-Themen 2 25.05.2011 10:39
Regex Pattern Problem JavaRegexer Allgemeine Java-Themen 12 14.01.2008 19:31
Probleme mit RegEx (Pattern und Matcher) Kool Java Basics - Anfänger-Themen 2 19.10.2007 15:06
Pattern: Summary of regex constructs: Backslash MrWiseGuy Allgemeine Java-Themen 2 15.11.2005 09:58


Lesezeichen

Forumregeln
Es ist Ihnen erlaubt, neue Themen zu verfassen.
Es ist Ihnen erlaubt, auf Beiträge zu antworten.
Es ist Ihnen nicht erlaubt, Anhänge hochzuladen.
Es ist Ihnen nicht erlaubt, Ihre Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are aus
Pingbacks are aus
Refbacks are aus


Alle Zeitangaben in WEZ +1. Es ist jetzt 17:36 Uhr.


Powered by vBulletin® Version 3.8.6 (Deutsch)
Copyright ©2000 - 2013, Jelsoft Enterprises Ltd.
Search Engine Friendly URLs by vBSEO 3.3.2
Thanks for Smilies by smilies.4-user.de