亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

正則表達式僅匹配字母字符

正則表達式僅匹配字母字符

慕勒3428872 2019-10-17 10:46:40
我想知道是否可以得到一個僅包含字母字符的正則表達式匹配的字符串
查看完整描述

3 回答

?
UYOU

TA貢獻1878條經驗 獲得超4個贊

您可以使用以下兩個變體中的任何一個:


/^[A-Z]+$/i

/^[A-Za-z]+$/

匹配ASCII字母的輸入字符串。


[A-Za-z] 將匹配所有字母(小寫和大寫)。

^并$確保除了這些字母外,什么都不會匹配。

碼:


preg_match('/^[A-Z]+$/i', "abcAbc^Xyz", $m);

var_dump($m);

輸出:


array(0) {

}

測試用例用于OP的評論,即只有輸入中存在1個或多個字母時,他才想匹配。如您所見,在測試用例中,匹配失敗,因為^輸入字符串中存在abcAbc^Xyz。


注意:請注意,以上答案僅匹配ASCII字母,不匹配Unicode字符。如果要匹配unicode字母,請使用:


/^\p{L}+$/u


查看完整回答
反對 回復 2019-10-17
?
猛跑小豬

TA貢獻1858條經驗 獲得超8個贊

如果您需要包含非ASCII字母字符,并且您的正則表達式支持Unicode,則


\A\pL+\z

將是正確的正則表達式。


一些正則表達式引擎不支持此Unicode語法,但允許\w字母數字速記也可以匹配非ASCII字符。在這種情況下,可以通過減去以下數字和下劃線來獲得所有字母\w:


\A[^\W\d_]+\z

\A在字符串的開頭,字符串\z的末尾匹配(^并且$在某些語言(例如Ruby)中,或者在設置了某些正則表達式選項的情況下,也匹配在行的開頭/結尾)。


查看完整回答
反對 回復 2019-10-17
?
眼眸繁星

TA貢獻1873條經驗 獲得超9個贊

這將匹配一個或多個字母字符:


/^[a-z]+$/

您可以使用以下命令使其不區分大小寫:


/^[a-z]+$/i

要么:


/^[a-zA-Z]+$/


查看完整回答
反對 回復 2019-10-17
  • 3 回答
  • 0 關注
  • 1303 瀏覽

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號