2013-11-28 65 views

回答

7

元字符\w等同於字符類[a-zA-Z0-9_];只匹配字母,數字和_

而是使用字符屬性\p{Word}

'The name of the city is: Ørbæk'.match(/:\s\p{Word}+/) 
# => #<MatchData ": Ørbæk"> 

根據Character Properties from Ruby Regexp documentation

/\p{Word}/ - 以下Unicode通用類書之一的成員,標記,號碼,CONNECTOR_PUNCTUATION

2

您可以使用\ p {字}代替:

irb(main):001:0> 'The name of the city is: Ørbæk'.match(/:\s\p{Word}+/) 
=> #<MatchData ": Ørbæk"> 
1

如果你想匹配的單詞只包含字母字符,然後使用\p{L}

match(/:\s\p{L}+/)