簡體   English   中英

Forename Surname OR Mr & Mrs Surname (or Mrs & Mrs, etc.)

[英]Regex for Forename Surname OR Mr & Mrs Surname (or Mrs & Mrs, etc.)

我正在使用這個正則表達式進行一些基本的名稱驗證

^[a-zA-Z][a-zA-Z]*([-' ][a-zA-Z][a-zA-Z]*)*$

但是,我也想允許Mr & Mrs Bobble有效。 我當前的正則表達式只允許字符組之間有一個空格,我不確定如何允許<space>&<space> or <space>

您可以使用

^[a-zA-Z][a-zA-Z]*(?:(?: & |[-' ])[a-zA-Z][a-zA-Z]*)*$
                     ^^^^^^^^^^^^^  

查看正則表達式演示

非捕獲組(?: & |[-' ])匹配空格、 & 、空格或-'或單個空格。 當找到匹配項后無法訪問它們匹配的文本時,將使用非捕獲組,因此,在這種情況下,所有組都應為非捕獲組: (?: & |[-' ])將兩個選項分組為| 交替運算符(?:(?: & |[-' ])[a-zA-Z][a-zA-Z]*)對模式的量化序列進行分組。

如果您想匹配任何空格,請將模式中的文字空格替換為\\s

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM