簡體   English   中英

正則表達式“\\ w”不處理Ruby 1.9.2中的utf-8字符

[英]Regex “\w” doesn't process utf-8 characters in Ruby 1.9.2

Regex \\w與Ruby 1.9.2中的utf-8字符不匹配。 有人遇到同樣的問題嗎?

例:

/[\w\s]+/u

在我的rails application.rb中我添加了config.encoding = "utf-8"

定義“與utf-8字符不匹配”? 如果你希望\\w匹配除了大寫和小寫ASCII字母,ASCII數字和下划線以外的任何東西,它都不會 - Ruby定義\\w等於[A-Za-z0-9_]無論如何的Unicode。 也許你想要\\p{Word}或類似的東西。

參考: Ruby 1.9 Regexp文檔 (請參閱“字符類”一節)。

你總是可以使用類似的東西

[a-zA-Z0-9_ñáéíóú] 

而不是\\w

暫無
暫無

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

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