Regex - match einen string ohne führende und nachfolgende Leerzeichen

Gebäude einen Ausdruck, lehnt eine ungetrimmte input-string.

Haben eine Gruppe von white-listed-Symbole, einschließlich Leerzeichen. Aber es kann nicht verwendet werden, die bei der ersten oder bei der letzten position. Es kann jedoch verwendet werden, zwischen führenden und trimmen weiß-gelistet-symbol in beliebiger Höhe.

Haben folgenden Ausdruck:

^[^\s][A-Za-z0-9\s]*[^\s]$

... aber es funktioniert nicht in verschiedenen Gründen, zumindest ist es immer noch Spiele auf führende und nachfolgende position jedes nicht-whitespace-symbol, auch wenn es nicht in der weißen Liste aufgeführt. Futhermore, es wird nicht mit einzelnen Buchstaben-Wort, auch wenn es entspricht, zum Ausdruck.

Die whitelist ist A-Z, A-z, 0-9, Leerzeichen.

Gültig Gehäuse:

Abc132 3sdfas //everything ok

Ungültige Fall #1:

 asd dsadas //leading\trailing space is exist

Ungültige Fall #2:

$das dsfds //not whitelisted symbol at the leading\trailing position

So, wie fügen Sie ein Leerzeichen-symbol auf der "weißen Liste", wenn es nicht die führende oder nachgestellte symbol?

  • Könnten Sie einige Beispiele von sowohl gültige und ungültig Fällen?
  • versuchen Sie es mit \\N bitte lassen Sie mich wissen, ob das geholfen, ich hatte dasselbe Problem und es war das, was mir fehlte
  • ja, nehmen Sie einen Blick
  • ^[A-Za-z0-9]+(?:\s+[A-Za-z0-9]+)*$
  • ^[A-Za-z0-9]+.*[A-Za-z0-9]+$: erste Zeichen sollte alphanumeric und hat zumindest einmal vorkommen, und die Letzte soll auch die gleichen, alles zwischen. Tut es, das problem zu lösen?
InformationsquelleAutor WildDev | 2016-08-13
Schreibe einen Kommentar