回答
試試這個:
[A-Z][a-z]*
注意,這是,但是,沒有一個很好的方法來驗證名。根據區域設置,可能會使用非ASCII UTF8字符。另外,並非所有名稱都以大寫字母開頭。下列名稱在現實世界中存在:
Martha de Lange Norton
Marcél du Toit
因此,這是好一點 - 它只是確保每個字符是一個有效的一封信:
\p{L}+
這就是說,以最好的方式這可能取決於正則表達式引擎的實現,所以我們需要知道您正在使用的語言和/或正則表達式庫。
編輯根據您的回答:如果您需要分析在同一時間兩個字段,試試這個:
^[A-Z][a-z]*\s[A-Z][a-z]*$
@「」在C#中定義了一個字符串字面值,消除了雙重轉義的需要。有助於正則表達式。 (雖然對於OP的正則表達式是多餘的,因爲沒有特殊字符)。 –
所以我有: [RegexValidator(@「[A-Z] [a-z] *」,MessageTemplate =「Name must be valid!「,Ruleset =」validate_name「)] 然後測試通過以」laddf Ghu「爲例,這是不正確的(laddf不以大寫字母開頭) – qwerty
,指出它不與一個或多個資金啓動。 ^
內的字符類意味着否定... [^A-Z]
意味着除首都以外的一切。在括號之外,它表示'字符串的開始',我認爲這是你的意圖。你想這樣的:
^[A-Z]?[a-z]*
一個或年初增加資本的,或
^[A-Z][a-z]*
整整一個資本,或者
^[A-Z][A-Za-z]*
爲首都的任何地方,但絕對一個開頭。
因爲McGregor是合法的名字,但不要忘記O'Reilly。 –
- 1. 分割名稱爲名字和姓氏
- 2. 將單個字段分隔成名稱,姓氏和姓氏
- 3. 名字和姓氏中的Split姓氏
- 4. 串聯名字和姓氏作爲名稱,然後ommit Firtname和姓氏在SSIS
- 5. :姓名,姓氏:姓名
- 6. 用名字和姓氏查找姓名
- 7. 如何在Excel中創建姓氏,姓氏的帳戶名稱
- 8. 單名文本框中的名字和姓氏的姓氏
- 9. 更改姓氏,名字到姓氏,FirstInitial
- 10. 僅提取姓氏名字,姓氏
- 11. 從姓氏和姓氏字段中獲取最短的唯一名稱
- 12. 提取名字和姓氏
- 13. MVC User.Identity.Name,姓氏和名字
- 14. 搜索名字和姓氏
- 15. 從表格中提取姓氏,姓氏和姓氏
- 16. 按姓氏排序名稱數組?
- 17. 在sqlite中分割姓氏和姓氏
- 18. JSON編碼姓名+姓氏=全名
- 19. 在Python中解析姓氏從姓名中解析姓氏
- 20. 名,中間名和姓氏MS SQL
- 21. MySQL搜索姓氏和姓
- 22. 開關姓氏,名字姓氏裏面名單
- 23. OpsHub - 用戶映射 - 名字姓氏vs(Azure)姓氏,名字
- 24. 第一範式和名字和姓氏
- 25. 的tablesorter和姓氏
- 26. Python CSV將全名字符串分割成姓名和姓氏
- 27. SQL Server - 在名字和姓氏字段中搜索姓名
- 28. 將姓名字段拆分成姓氏和名字
- 29. 解析姓名爲第一名字和姓氏 - LINQ到實體
- 30. SSIS從姓名中提取姓氏
「德布羅意」這樣的名字怎麼樣? – Seth
還是O'Malley?還是麥當勞? –
是的..你可能最好只是看特殊字符,並假設人們正確輸入自己的名字。 – Ipsquiggle