-1
我正在驗證英文名稱。我怎樣才能改進這個正則表達式,以確保連字符,逗號或撇號不會首先出現在字符串中?此外,連字符或撇號必須始終直接在一個字母前面和後面。爲美國和英國名稱改進以下RegEx
我有RegEx:[a-zA-Z-', ]
。
我的理解是,這將允許字符串中任何位置的所有字母,所有情況下都包含連字符,逗號和撇號以及空白。
相當新的語言,所以只是讓我的頭。
謝謝。
我正在驗證英文名稱。我怎樣才能改進這個正則表達式,以確保連字符,逗號或撇號不會首先出現在字符串中?此外,連字符或撇號必須始終直接在一個字母前面和後面。爲美國和英國名稱改進以下RegEx
我有RegEx:[a-zA-Z-', ]
。
我的理解是,這將允許字符串中任何位置的所有字母,所有情況下都包含連字符,逗號和撇號以及空白。
相當新的語言,所以只是讓我的頭。
謝謝。
好,因爲它是隻給一個假定的名字,這裏是你可能想嘗試什麼:
^[A-Z][A-Za-z'-]+[a-z](,? [A-Z][A-Za-z'-]+[a-z])*$
這將名工作像O'Harry
Jefferson-Wayne
,但將拒絕的話不會有一本小英文字母結束。
它的要點是這個[A-Z]
名字的開始,[A-Za-z'-]+
延續,[a-z]
名稱的結尾。然後是一組可選名稱,帶有可選的逗號分隔符,但所需的空間。
我花了更多時間寫下例子來測試http://www.regexplanet.com/。這就是我在開發時練習正則表達式的地方。你應該試試。
函數是否知道它正在被賦予一個名字,或者它可能是別的,並且必須確定它是否是一個名字? – coladict
它期望一個名字 – Jordan
這是爲什麼downvoted,這似乎是一個合理的問題? – Jordan