Ruby正则中文汉字

1.puts /[一-龥]+/.match("this is 中文")                 =>中文
2.str2="123中文"

puts /\p{Han}+/u.match(str2)           # /u是utf-8

/a/.encoding   # US-ASCII
/a/u.encoding # UTF-8

Ruby 和部分语言可以直接 #{Han} 等方式匹配特定的语言,但是对于某些语言,如 JavaScript,是不可能如此简便的
还有常用的:
/\p{Word}+/u 不限于 a-z0-9 的成词字符(就是非标点制表符空格等杂类的字符)

/\p{Hiragana,Katakana}+/u 匹配平假名+片假名

还有一篇讨论:https://ruby-china.org/topics/5680

你可能感兴趣的:(Ruby)