1.puts /[一-龥]+/.match("this is 中文") =>中文
2.str2="123中文"
Ruby 和部分语言可以直接 #{Han} 等方式匹配特定的语言,但是对于某些语言,如 JavaScript,是不可能如此简便的
还有常用的:
/\p{Word}+/u 不限于 a-z0-9 的成词字符(就是非标点制表符空格等杂类的字符)
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