regular Expression
Rüdiger
- php
hallo zusammen
jetzt sitz ich an dem problem schon 2 std drann hab seitenweise das internet durchgepflügt, aber ich check das nicht :-(
in einem formular soll der user eine telefonnummer rein schreiben,
die sollte so aussehen +49-674 883 334.
erlaubt sind nur zahlen, ein +, ein - oder ein leerzeichen.
wenn er die nummer ohne + und bindestrich reinschreibt ist mir das egal.
das ist mein versuch, ich verstehs aber nicht warum das nicht funzt
preg_match("/[1]{8,20}$/", $telnr)
vielen dank im voraus für die hilfe
Gruß Rüdiger
0-9+-\s ↩︎
Moin!
1. Was heißt "funzen"? ;-) (SCNR)
2. Dein Ausdruck besagt, daß 8-20 Zeichen erlaubt sind und diese könen Ziffern, "+", '-" oder Whitspace (als space und tab) sein. Was funktioniert denn nicht.
-- Skeeve
Moin!
- Was heißt "funzen"? ;-) (SCNR)
- Dein Ausdruck besagt, daß 8-20 Zeichen erlaubt sind und diese könen Ziffern, "+", '-" oder Whitspace (als space und tab) sein. Was funktioniert denn nicht.
-- Skeeve
hallo zusammen
erstmal vielen dank für die vielen und schellen antworten
so geht es jetz
preg_match("/[1]{8,18}$/",$telnr)
ich dachte ich muss "-" und "+" nicht mit einem "" quoten
@Skeeve: war eine ungenaue aussage von mir, sorry
ich konnte in das feld schreiben was ich wollte und mein script hat mich nie geschimpft ;-)
danke nochmal
einen schönen abend euch allen
Gruß Rüdiger
0-9+-\s ↩︎
Plus- und Minuszeichen sind Metazeichen:
+ -
ist die richtige Schreibweise.
Moin!
Plus- und Minuszeichen sind Metazeichen:
+ -
ist die richtige Schreibweise.
In einer Zeichenklasse ist das für ein "+" nicht nötig. Füs "-" schon und das habe ich unten in meiner Antwort glatt übersehen... Schande über mich ;-)
-- Skeeve
gudn tach!
Plus- und Minuszeichen sind Metazeichen:
+ -
ist die richtige Schreibweise.
In einer Zeichenklasse ist das für ein "+" nicht nötig.
soweit stimmt's.
Füs "-" schon und das habe ich unten in meiner Antwort glatt übersehen... Schande über mich ;-)
nee, war alles richtig, was du zunaechst sagtest. denn das "-" muss nicht immer maskiert werden:
'You may use \w , \W , \s, \S , \d , and \D within character classes, but if you try to use them as endpoints of a range, that's not a range, the "-" is understood literally.' (perldoc perlre)
prost
seth
n'abend,
preg_match("/[1]{8,20}$/", $telnr)
einmal benutzt du - als Indikator für einen Bereich (0-9) und einmal benutzt du das - als Zeichen. Woher soll PHP den Unterschied wissen? wenn du - als Zeichen angeben möchtest, dann musst du es maskieren (-).
preg_match("/^[0-9+\-\s]{8,20}$/", $telnr);
weiterhin schönen abend...
0-9+-\s ↩︎
n'abend,
preg_match("/^[0-9+\-\s]{8,20}$/", $telnr);
huch... da hab ich doch glatt das + vergessen, das muss natürlich auch maskiert werden.
preg_match("/^[0-9\+\-\s]{8,20}$/", $telnr);
weiterhin schönen abend...
gudn tach
huch... da hab ich doch glatt das + vergessen, das muss natürlich auch maskiert werden.
nein, nicht in zeichenklassen; hat Skeeve mittlerweile gesagt.
und zum minus habe ich dort was geschrieben.
prost
seth