簡體   English   中英

匹配前兩個單詞的前兩個字母

[英]matching first two letters of the first two words

我正在使用正則表達式+ php我會匹配前兩個單詞的前兩個字母

例如,對於該行:

Mr Christophe Mailler Jean Dupon

我需要匹配:

Ch Ma

我試過這個正則表達式:

(?:Mr|Mme)\s+\b([a-zA-Z][a-zA-Z])

但它只匹配Ch

有什么幫助嗎?

你需要擴展模式匹配第二個單詞,如下所示:

(?:Mr|Mme)\s+([a-zA-Z]{2})\S*\s+([a-zA-Z]{2})

我還建議使用這樣的模式在PCRE引擎中利用Unicode支持

(?:Mr|Mme)\s+(\pL{2})\S*\s+(\pL{2})

例如:

$input = "Mr Christophe Mailler Jean Dupon";
preg_match("/(?:Mr|Mme)\s+(\pL{2})\S*\s+(\pL{2})/iu", $input, $output);
echo $output[1] . ' ' . $output[2]; // Ch Ma

暫無
暫無

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

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