php.de

Zurück   php.de > Webentwicklung > JavaScript, Ajax und mehr

JavaScript, Ajax und mehr dynamisches Scripten und Interaktion auf Clientebene

Antwort
 
LinkBack Themen-Optionen Thema bewerten
Alt 18.02.2011, 15:45  
Erfahrener Benutzer
 
Registriert seit: 06.04.2009
Beiträge: 251
PHP-Kenntnisse:
Fortgeschritten
BlackSpirit befindet sich auf einem aufstrebenden Ast
BlackSpirit eine Nachricht über MSN schicken
Standard [Erledigt] Regulärer Ausdruck

Hallo Liebe Community!

Ich habe in php einen regulären Ausdruck:
Code:
#^http:\/\/(?:www\.)?example\.com\/(?<id>[0-9]{8,9})\/(?<name>(?<id2>[^\s]+))(?:\.html?)?$#Ui
Nun möchte ich diesen in Javascript auch verwenden:
Code:
/^http:\/\/(?:www\.)?example\.com\/([0-9]{8,9})\/([^\s]+)(?:\.html?)?$/i

Nun zu meinen Problem:


In php habe ich einfach "Gier" mit dem Modifier U unterdrückt.

In Javascript gibt es den nicht (glaube ich zumindest).

Wenn ich jetzt z.B. diesen Link:
http://example.com/12345678/blablabla.rar.html
da rein schicke bekommen ich als 2ten Wert "blablabla.rar.html" zurück.

Wie kann ich das verhindern?
Es sollte ein .html ignorieren.
Also bei http://example.com/12345678/blablabla.html.html -> "blablabla.html"
Es kann auch vorkommen, dass kein .html im Link steht.

Gibt es da eine Möglichkeit, das ganze mit einem regulären Ausdruck zu lösen?


Noch eine Frage Nebenbei:
Geht es in Javascript per (?<id>...), oder etwas ähnlichen, den Array Namen zu ändern?
Wenn nicht ist es auch kein Problem.
__________________
Lerne, Software zu schätzen und bedanke dich für die positiven Aspekte, bevor der Entwickler die Motivation zum weiterentwickeln verliert.
BlackSpirit ist offline   Mit Zitat antworten
Sponsor Mitteilung
PHP Code Flüsterer

Registriert seit: 21.08.2005
Beiträge: 4682
PHP-Kenntnisse:
Fortgeschritten

Alt 18.02.2011, 16:00  
Erfahrener Benutzer
 
Registriert seit: 25.09.2009
Beiträge: 2.114
PHP-Kenntnisse:
Fortgeschritten
BlackScorp wird schon bald berühmt werdenBlackScorp wird schon bald berühmt werden
Standard

ich glaube , das was du willst, lässt sich mit Modrewrite regeln. Also sprich, url x wird im browser eingegeben , url y wird auf dem server ausgeführt
__________________
Mein kleines Projekt
-Cruel Online-
5 von 3 Leuten können kein Bruchrechnen
BlackScorp ist offline   Mit Zitat antworten
Alt 18.02.2011, 16:01  
Erfahrener Benutzer
 
Registriert seit: 06.04.2009
Beiträge: 251
PHP-Kenntnisse:
Fortgeschritten
BlackSpirit befindet sich auf einem aufstrebenden Ast
BlackSpirit eine Nachricht über MSN schicken
Standard

Zitat:
Zitat von BlackScorp Beitrag anzeigen
ich glaube , das was du willst, lässt sich mit Modrewrite regeln. Also sprich, url x wird im browser eingegeben , url y wird auf dem server ausgeführt
Nein, sowas meinte ich nicht.
Der User fügt Links in ein Feld ein, diese werden geparst angezeigt, und können weiter bearbeitet/sortiert/... werden.

lg
__________________
Lerne, Software zu schätzen und bedanke dich für die positiven Aspekte, bevor der Entwickler die Motivation zum weiterentwickeln verliert.
BlackSpirit ist offline   Mit Zitat antworten
Alt 18.02.2011, 16:05  
Moderator¹
 
Registriert seit: 28.03.2010
Beiträge: 7.470
PHP-Kenntnisse:
Fortgeschritten
ChrisB ist ein wunderbarer AnblickChrisB ist ein wunderbarer AnblickChrisB ist ein wunderbarer AnblickChrisB ist ein wunderbarer AnblickChrisB ist ein wunderbarer AnblickChrisB ist ein wunderbarer AnblickChrisB ist ein wunderbarer Anblick
Standard

Zitat:
Zitat von BlackSpirit Beitrag anzeigen
In php habe ich einfach "Gier" mit dem Modifier U unterdrückt.

In Javascript gibt es den nicht (glaube ich zumindest).
Nein.
Aber ein Fragezeichen hinter einem Quantifier unterdrückt dessen greediness.

Zitat:
Wenn ich jetzt z.B. diesen Link:
http://example.com/12345678/blablabla.rar.html
da rein schicke bekommen ich als 2ten Wert "blablabla.rar.html" zurück.

Wie kann ich das verhindern?
Den Quantifier für den Teilausdruck davor ungreedy machen.

Zitat:
Geht es in Javascript per (?<id>...), oder etwas ähnlichen, den Array Namen zu ändern?
Die Frage erübrigt sich wohl, wenn du berücksichtigst, dass es in JavaScript keine assoziativen Arrays gibt.
__________________
RGB is totally confusing - I mean, at least #C0FFEE should be brown, right?
ChrisB ist offline   Mit Zitat antworten
Alt 18.02.2011, 16:08  
Erfahrener Benutzer
 
Registriert seit: 25.09.2009
Beiträge: 2.114
PHP-Kenntnisse:
Fortgeschritten
BlackScorp wird schon bald berühmt werdenBlackScorp wird schon bald berühmt werden
Standard

Zitat:
Zitat von ChrisB Beitrag anzeigen
Die Frage erübrigt sich wohl, wenn du berücksichtigst, dass es in JavaScript keine assoziativen Arrays gibt.
aber objekte

PHP-Code:
$meinArray = new Object();
for(var 
0;i<10;i++){
$meinArray['foo'] = 'bar';
}
console.log($meinArray); 
ich verstehe nur nicht wieso man erst mit JS eine eingabe prüft, die an server schickt und dort nochmal prüft.. oder habe ich das gesammte Problem falsch verstanden?
__________________
Mein kleines Projekt
-Cruel Online-
5 von 3 Leuten können kein Bruchrechnen
BlackScorp ist offline   Mit Zitat antworten
Alt 18.02.2011, 16:25  
Erfahrener Benutzer
 
Registriert seit: 06.04.2009
Beiträge: 251
PHP-Kenntnisse:
Fortgeschritten
BlackSpirit befindet sich auf einem aufstrebenden Ast
BlackSpirit eine Nachricht über MSN schicken
Standard

Zitat:
Aber ein Fragezeichen hinter einem Quantifier unterdrückt dessen greediness.
Vielen Dank, hat mit sehr weitergeholfen!

Also einfach:
/^http:\/\/(?:www\.)?example\.com\/([0-9]{8,9})\/([^\s]+?)(?:\.html?)?$/i

Zitat:
ich verstehe nur nicht wieso man erst mit JS eine eingabe prüft, die an server schickt und dort nochmal prüft.. oder habe ich das gesammte Problem falsch verstanden?
Es ist Benutzer freundlicher.
Und die Links werden per Javascript nicht nur überprüft sondern auch gleich sortiert und danach übersichtlich in einer Art Tabelle angezeigt.
Diesen können dann Namen zugewiesen werden, in Gruppen zusammengefasst werden usw...

Per php werden sie danach natürlich noch einmal überprüft um keine Lücke zu haben.
__________________
Lerne, Software zu schätzen und bedanke dich für die positiven Aspekte, bevor der Entwickler die Motivation zum weiterentwickeln verliert.
BlackSpirit ist offline   Mit Zitat antworten
Alt 18.02.2011, 16:51  
Moderator¹
 
Registriert seit: 28.03.2010
Beiträge: 7.470
PHP-Kenntnisse:
Fortgeschritten
ChrisB ist ein wunderbarer AnblickChrisB ist ein wunderbarer AnblickChrisB ist ein wunderbarer AnblickChrisB ist ein wunderbarer AnblickChrisB ist ein wunderbarer AnblickChrisB ist ein wunderbarer AnblickChrisB ist ein wunderbarer Anblick
Standard

Zitat:
Zitat von BlackScorp Beitrag anzeigen
Zitat:
Zitat von ChrisB
Die Frage erübrigt sich wohl, wenn du berücksichtigst, dass es in JavaScript keine assoziativen Arrays gibt.
aber objekte
Was aber in dem Zusammenhang mal absolut belanglos ist, wenn die entsprechenden Methoden nun mal Arrays als Rückgabe liefern ...
__________________
RGB is totally confusing - I mean, at least #C0FFEE should be brown, right?
ChrisB ist offline   Mit Zitat antworten
Alt 28.02.2011, 16:13  
moderatives Dielektrikum
 
Benutzerbild von nikosch
 
Registriert seit: 21.05.2008
Beiträge: 35.987
PHP-Kenntnisse:
Fortgeschritten
nikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunft
Standard

Zitat:
Aber ein Fragezeichen hinter einem Quantifier unterdrückt dessen greediness.
Genauer: Kehrt das Greedynessverhalten um. bei /U fördert es die Gierigkeit.
__________________
--
One pixel is still too big. Please make it smaller. ASAP.

Initiative Mittelstand.
Die wichtigste Gestaltungsregel im Screendesign ist Pi mal Daumen des Arbeitgebers.
--
nikosch ist offline   Mit Zitat antworten
Alt 28.02.2011, 16:58  
Moderator¹
 
Registriert seit: 28.03.2010
Beiträge: 7.470
PHP-Kenntnisse:
Fortgeschritten
ChrisB ist ein wunderbarer AnblickChrisB ist ein wunderbarer AnblickChrisB ist ein wunderbarer AnblickChrisB ist ein wunderbarer AnblickChrisB ist ein wunderbarer AnblickChrisB ist ein wunderbarer AnblickChrisB ist ein wunderbarer Anblick
Standard

Zitat:
Zitat von nikosch Beitrag anzeigen
Genauer: Kehrt das Greedynessverhalten um. bei /U fördert es die Gierigkeit.
Aber nicht in JavaScript, wo es /U nicht gibt
__________________
RGB is totally confusing - I mean, at least #C0FFEE should be brown, right?
ChrisB ist offline   Mit Zitat antworten
Antwort


Themen-Optionen
Thema bewerten
Thema bewerten:

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

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

Ähnliche Themen
Thema Autor Forum Antworten Letzter Beitrag
[Erledigt] Regulärer Ausdruck phpsecretary PHP Tipps 2010 31 30.07.2010 14:08
Regulärer Ausdruck macht Probleme ingohill PHP-Fortgeschrittene 3 25.06.2010 13:34
[Erledigt] regulärer Ausdruck für Bibtex Datei hawkeye78 PHP-Fortgeschrittene 8 03.08.2009 15:59
[Erledigt] Regulärer Ausdruck tito PHP Tipps 2009 9 29.07.2009 15:18
[Erledigt] regulärer Ausdruck, neg. Lookbehind Felk PHP Tipps 2009 18 08.04.2009 23:48
[Erledigt] regulärer ausdruck: negation einer zeichenkette Asipak PHP Tipps 2009 5 17.03.2009 15:37
Regulärer Ausdruck ruferp PHP Tipps 2007 1 19.06.2007 20:21
Regulärer Ausdruck um <> zu entfernen innerhalb von XM becks123 PHP Tipps 2006 25 16.05.2006 15:06
regulärer ausdruck tomson PHP Tipps 2006 11 03.02.2006 09:58
Regulärer Ausdruck: Ping-Zeiten speichern mAy^daY Server, Hosting und Workstations 9 12.01.2006 19:51
Regulärer Ausdruck funktioniert nicht PHP Tipps 2006 12 05.01.2006 20:56
[Erledigt] Regulärer Ausdruck HILFE!! PHP-Fortgeschrittene 6 22.07.2005 16:39
Regulärer Ausdruck mit Negation? PHP-Fortgeschrittene 23 21.07.2005 09:01
str_replace/ereg_replace regulärer ausdruck gesucht[gelöst] nautiluS PHP Tipps 2005 12 10.05.2005 13:50
[Erledigt] Regulärer Ausdruck für E-Mail Adressen PHP Tipps 2004 4 05.08.2004 10:36

Besucher kamen über folgende Suchanfragen bei Google auf diese Seite
rückgabe regulärer ausdruck php

Alle Zeitangaben in WEZ +2. Es ist jetzt 09:21 Uhr.




Powered by vBulletin® Version 3.7.2 (Deutsch)
Copyright ©2000 - 2012, Jelsoft Enterprises Ltd.
Search Engine Optimization by vBSEO 3.2.0
Aprilia-Forum, Aquaristik-Forum, Liebeskummer-Forum, Zierfisch-Forum, Geizkragen-Forum