preg_macht fehler

kevkev

Erfahrenes Mitglied
EDIT:
Es geht, hab nur ne variable falsch gesetzt :rolleyes:.

Hallo,

Ich möchte mit diesem Preg_match überprüfen, ob $string das ist:
/irgendwas
/irgendwas -irgendwas "irgendwas"
/irgendwas -irgendwas 'irgendwas'
/irgendwas -irgendwas "irgendwas" -irgendwas2 "irgendwas2"..

So sieht meine syntax aus:


PHP:
preg_match("/\/((.*)|(.*)( -(.*) (\"|')(.*)(\"|'))+)/, $string);

Die funktioniert nur leider nicht.

Lasse ich hingegen die überprüfen auf ein "/irgendwas" weg, geht es:
PHP:
preg_match("/\/(.*)( -(.*) (\"|')(.*)(\"|'))+/", $string);

Warum?

gruß kevin
 
Zuletzt bearbeitet:
Hi,

Es geht, hab nur ne variable falsch gesetzt :rolleyes: .
Danke für deins, würde warscheinlich genauso funktionieren, nur kapiere ich das nicht, daher bleibe ich beim alten :)!

Trotzdem danke.

gruß kevin
 
Ok, Ich brauche doch Hilfe :(!

Also mit deinem String geht das auch nicht irgendwie:
PHP:
//bei 
/(?:[^ ]+)(?: -(?:[^ ]+) (?:\"[^\"]+\"|'[^']+'))*/

//und
$input = "/search -lol 'gaga\"";

//True

Es sollte nur mit folgenden strings gehen:
/cmd
/cmd -info "test" ..
/cmd -info 'test' ...

Aber mit meinen komischen dingern geht das nicht :(!

gruß kevin
 
Zurück