2012-10-02 6 views

Antwort

21

angepasst werden Diese

\+?\d+ 

Spiele eine optionale + am Anfang der Linie und Ziffern, nachdem es

EDIT funktionieren sollte:

Wie von OPs Bitte um Klärung: 3423kk55 wird angepasst, weil so ist es der erste Teil (3423). Passend nur eine ganze Reihe verwenden Sie stattdessen:

^\+?\d+$ 
1

Ein Perl regulären Ausdruck für sie sein könnte: \+?\d+

7

Es wird in etwa so aussehen:

\+?\d+ 

Die \+ bedeutet ein wörtliches Pluszeichen, die ? bedeutet, dass die vorangehende Gruppe (das Pluszeichen) 0 oder 1 mal erscheinen kann, \d zeigt eine Ziffer an, und das letzte + erfordert, dass die vorhergehende Gruppe (die Ziffer) erscheint ein- oder mehrmals.

EDIT: Bei der Verwendung von regulären Ausdrücken, bedenken Sie, dass es einen Unterschied gibt zwischen finden und Matches (in Java zumindest, wenn die meisten Regex-Implementierungen haben ähnliche Methoden). find wird die Teilzeichenfolge irgendwo in der besitzenden Zeichenfolge finden, und Übereinstimmungen wird versuchen, die gesamte Zeichenfolge mit dem Muster übereinstimmen, fehlgeschlagen, wenn zusätzliche Zeichen vor oder nach sind. Stellen Sie sicher, die richtige Methode verwenden, und denken Sie daran, dass Sie ein ^ hinzufügen können den Anfang der Zeile zu erzwingen und eine $ das Ende der Linie zu zwingen (wodurch die ganze Sache wie ^\+?\d+$ aussehen.

4

Einfache ^\+?\d+$

Startlinie, dann 1 oder 0 plus Zeichen, gefolgt von mindestens 1 Ziffer, dann Ende von lnie

Verwandte Themen