2012-07-16 88 views
0

我有用於驗證輸入字段以下要求:正則表達式模式以驗證名稱字段

  • 它應該只包含字母和空格。
  • 它不能在字符串的開頭或結尾包含空格。
  • 它不能包含任何其他特殊字符。

例如,該表達式應接受以下字符串"my name is wish"

正則表達式我使用的是:

RegExp.Pattern = "^[\a-zA-Z]*[\s]*[\a-zA-Z]*[\s]*[\a-zA-Z]*$" 

當我輸入一個名稱爲「ABC ABC abc6」它接受它作爲有效。自從輸入一個數字後它應該會出錯。

回答

0

嘗試這種模式

^[a-zA-Z]+(?:\s+[a-zA-Z]+)*$ 

模式的說明:

^   Start of string 
[a-zA-Z] Any character in the class a to z or A to Z 
+   One or more repititions 
(?: ) Match expresion but don't capture 
\s+  Whitespace, One or more repititions 
*   Zero or more repititions 
$   End of string 
+0

太感謝你了它工作的偉大,現在也該模式時,我寫的「ABC ABC abc6」認定錯誤。再次感謝你。 – user1528468 2012-07-17 06:55:37

+0

你能告訴我在上述模式中使用「:」冒號操作符的最新情況。 – user1528468 2012-07-17 07:55:47

+0

添加模式的說明 – 2012-07-17 10:56:12