Top-Themen

Aktuelle Themen (A bis Z)

Administrator.de FeedbackApache ServerAppleAssemblerAudioAusbildungAuslandBackupBasicBatch & ShellBenchmarksBibliotheken & ToolkitsBlogsCloud-DiensteClusterCMSCPU, RAM, MainboardsCSSC und C++DatenbankenDatenschutzDebianDigitiales FernsehenDNSDrucker und ScannerDSL, VDSLE-BooksE-BusinessE-MailEntwicklungErkennung und -AbwehrExchange ServerFestplatten, SSD, RaidFirewallFlatratesGoogle AndroidGrafikGrafikkarten & MonitoreGroupwareHardwareHosting & HousingHTMLHumor (lol)Hyper-VIconsIDE & EditorenInformationsdiensteInstallationInstant MessagingInternetInternet DomäneniOSISDN & AnaloganschlüsseiTunesJavaJavaScriptKiXtartKVMLAN, WAN, WirelessLinuxLinux DesktopLinux NetzwerkLinux ToolsLinux UserverwaltungLizenzierungMac OS XMicrosoftMicrosoft OfficeMikroTik RouterOSMonitoringMultimediaMultimedia & ZubehörNetzwerkeNetzwerkgrundlagenNetzwerkmanagementNetzwerkprotokolleNotebook & ZubehörNovell NetwareOff TopicOpenOffice, LibreOfficeOutlook & MailPapierkorbPascal und DelphiPeripheriegerätePerlPHPPythonRechtliche FragenRedHat, CentOS, FedoraRouter & RoutingSambaSAN, NAS, DASSchriftartenSchulung & TrainingSEOServerServer-HardwareSicherheitSicherheits-ToolsSicherheitsgrundlagenSolarisSonstige SystemeSoziale NetzwerkeSpeicherkartenStudentenjobs & PraktikumSuche ProjektpartnerSuseSwitche und HubsTipps & TricksTK-Netze & GeräteUbuntuUMTS, EDGE & GPRSUtilitiesVB for ApplicationsVerschlüsselung & ZertifikateVideo & StreamingViren und TrojanerVirtualisierungVisual StudioVmwareVoice over IPWebbrowserWebentwicklungWeiterbildungWindows 7Windows 8Windows 10Windows InstallationWindows MobileWindows NetzwerkWindows ServerWindows SystemdateienWindows ToolsWindows UpdateWindows UserverwaltungWindows VistaWindows XPXenserverXMLZusammenarbeit
Kommentar vom Moderator masterG am 24.02.2013 um 18:37:45 Uhr
Ich hab deine RegEx in einen Codeblock gepackt. Bitte Formatierungshilfe beachten.
GELÖST

Regex Ausdruck für Urls (Teil 2)

Frage Entwicklung PHP

Mitglied: ChrisFah

ChrisFah (Level 1) - Jetzt verbinden

24.02.2013, aktualisiert 18:36 Uhr, 1976 Aufrufe, 3 Kommentare

Erneuter Hilferuf für die Auflösung bei Urls

Ich verwende nun Dank der Hilfe eines Users dieses Forums für das Spliten der Urls folgenden Regex Ausdruck:

01.
'#^\/(?P<lang>de|en|fr|it)?\/?(?P<func>item|cat|fn|content|admin|my)?\/?(?P<text>\w)?\/?(?P<id_1>\d)?,?(?P<id_2>\d)?(?P<request>\?.*)?#i'
Prinzipiell klappt es so auch, jedoch werden auch Urls akzeptiert, bei denen in den jeweiligen Ausdrücken neben den angegebenen auch andere Zeichen vorkommen. Also zB "dexyz" anstelle von "de", oder "adminxyz" anstelle von "admin". Auch das Begrenzen der Länge mit {2} für die Sprache bringt nichts, da dann die restlichen zeichen aufgrund das optionaolen Slash in die <func> rutschen, was ja wiederum falsch ist...

Meine Frage: Gibt es ein Suchmuster, bei dem die angegebenen Buchstaben exakt übereinstimmen müssen, und nicht nur darin enthalten sein müssen, wie in meinem Regex Ausdruck (also quasi ein "if (Ausdruck == 'de' || Ausdruck == 'en' usw)" ?

Lg, Chris
Mitglied: dog
24.02.2013, aktualisiert um 18:50 Uhr
In deiner Regex ist jeder Teil unabhängig von den anderen:

/dexyz

wird gematcht von

'# ^\/(?P<lang>de|en|fr|it)?\/?(?P<func>item|cat|fn|content|admin|my)?\/?(?P<text>\w)?\/?(?P<id_1>\d)?,?(?P<id_2>\d)?(?P<request>\?.*)?(implizites match)#i'

c6fbc7ee35b16c89fdf75f63f8f66aac - Klicke auf das Bild, um es zu vergrößern
Bitte warten ..
Mitglied: 64748
24.02.2013, aktualisiert um 19:44 Uhr
Hallo,

Du solltest Dich mal ausgiebig mit Regulären Ausdrücken beschäftigen. Ich empfehle das Buch "Reguläre Ausdrücke" von Jeffrey E. F. Friedl (wenn man regex einmal begriffen hat benutzt man sie ständig ).

Für Deine Aufgabe könnte \b als Wortgrenze in Frage kommen (\B ist entsprechend "keine Wortgrenze"). Wird also nur das Wort "admin" gesucht, dann könnte
/\badmin\b/ 
passen.

Ich hab mir nochmal Deine URL-Beispiele aus dem Thread von gestern angesehen, wenn klar ist, dass die Zeichen '.' und '/' die Wörter begrenzen, dann kannst Du auch suchen mit
/[./](admin)[./]/
Ich arbeite normalerweise mit Perl und hab von PHP keine Ahnung. Jedoch wäre mein Ansatz für das Aufspalten einer URL folgender
@url = split /\//, $line ;
das heißt, ich würde die URL an den '/' (Slashes) aufspalten und alles was dazwischen ist in ein Array packen. Dann erhält man aus
www.domain.com/de/kategoriename/Artikelname/12345,98765
das Array mit dem Inhalt
www.domain.com  
de  
kategoriename  
Artikelname  
12345,98765
was erheblich einfacher zu verarbeiten ist.

Markus
Bitte warten ..
Mitglied: ChrisFah
24.02.2013 um 19:05 Uhr
Hallo, du hast Recht.
Wenn ich die Uri über die / splitte, dann umgeh ich das ganze Problem mit den optionalen Slashes. Das mit den \b hab ich übrigens schon probiert, klappt nicht wie gewünscht.

Danke für den Tipp!!!
Lg, ChrisFah
Bitte warten ..
Ähnliche Inhalte
LAN, WAN, Wireless
Netzwerk in 2 Teile trennen
gelöst Frage von pattexLAN, WAN, Wireless12 Kommentare

Hallo zusammen, ich benötige mal die Tipps der Profis für folgende Aufgabe: Ich möchte ein bestehendes Gbit-Netzwerk mit 10 ...

Apache Server
Alle Zahlen in URL mit 2 ersetzen
gelöst Frage von Mark812Apache Server1 Kommentar

Hallo zusammen, ich möchte in der URL ww.beispiel.de/3_abc alle Zahlen hinter www.beispiel.de mit einer 2 ersetzen und habe dafür ...

Entwicklung
RegEx Formulierung
gelöst Frage von Aki-kunEntwicklung3 Kommentare

Grüße zusammen, RegEx und ich sind inkompatibel . Ich bekomme den Ausdruck einfach nicht hin. (AusdruckA oder AusdruckB oder ...

Batch & Shell
Powershell Regex anders
gelöst Frage von ukodusBatch & Shell1 Kommentar

Hi, kann es sein, dass die Regex-Implementierung anders ist, als gewohnt? Der Regex funktioniert nämlich auf regexr.com -> Was ...

Neue Wissensbeiträge
Batch & Shell

Open Object Rexx: Eine mittlerweile fast vergessene Skriptsprache aus dem Mainframebereich

Information von Penny.Cilin vor 23 StundenBatch & Shell9 Kommentare

Ich kann mich noch sehr gut an diese Skriptsprache erinnern und nutze diese auch heute ab und an noch. ...

Humor (lol)

"gimme gimme gimme": Automatischer Test stolpert über Easter Egg im man-Tool

Information von Penny.Cilin vor 1 TagHumor (lol)6 Kommentare

Interessant, was man so alles als Easter Egg implementiert. Ist schon wieder Ostern? "gimme gimme gimme": Automatischer Test stolpert ...

MikroTik RouterOS

Mikrotik - Lets Encrypt Zertifikate mit MetaROUTER Instanz auf dem Router erzeugen

Anleitung von colinardo vor 1 TagMikroTik RouterOS8 Kommentare

Einleitung Folgende Anleitung ist aus der Lage heraus entstanden das ein Kunde auf seinem Mikrotik sein Hotspot Captive Portal ...

Sicherheit

Sicherheitslücke in HP-Druckern - Firmware-Updates stehen bereit

Information von BassFishFox vor 1 TagSicherheit1 Kommentar

Ein weiterer Grund, dass Drucker keinerlei Verbindung nach "auswaerts" haben sollen. Unter Verwendung spezieller Malware können Angreifer aus der ...

Heiß diskutierte Inhalte
Off Topic
Fachkräftemangel in Deutschland? - Talentschmiede schreibt alle 2 Tage die gleichen Stellen aus
Frage von Penny.CilinOff Topic12 Kommentare

Hallo, haben wir in Deutschland Fachkräftemangel? Die Talentschmiede schreibt gefühlt alle zwei Tage dieselben Stellen aus. Und das schon ...

Windows Server
Windows Store Apps
gelöst Frage von PeterleBWindows Server11 Kommentare

Gibt es einen Weg, auf Windows Server 2016 Windows Store Apps wie zum Beispiel die HP Smart App zu ...

Windows 10
Windows 10 RDP nicht mehr möglich
Frage von speedy-luisWindows 1010 Kommentare

Hallo zusammen, seit ein paar Tagen kann ich in unserem Netzwerk auf die Windows 10 PCs keine RDP-Session mehr ...

Microsoft
Erfahrungen mit Webcam over RDP gesucht
Frage von DerWoWussteMicrosoft10 Kommentare

Moin Kollegen. Bekanntlich kann man Webcams nur mit Drittanbietersoftware in RDP reinschleifen. Was nutzt Ihr dazu? Wie stabil funktioniert ...