2012-11-13 21 views
3

Ruby語言的正則表達式中的類\p{Alnum}是什麼?它包含哪些字符,它與[:alnum:]有什麼不同?Ruby中的Alnum類

回答

5

基於rdoctutorial,這兩個表達式是等價的。

它們包含字母和數字字符。如果只使用ASCII字符,則相當於[a-zA-Z0-9]。如果有非ASCII字符,則[:alnum:]p{Alnum}也會包含重音字符等內容。

+0

如果我們不僅使用ASCII字符,它們可能會不同嗎? –

+0

@MikaH:如果你圍繞C源代碼進行研究,你會發現它們(AFAIK)最終都被映射到同一個事物上。此外,''μ''匹配'/ [[:alnum]] /'和'/ \ p {Alnum} /',而不是僅匹配ASCII的'/ \ w /'。 –

+0

@ muistooshort謝謝,我在哪裏可以找到C源代碼? –