2017-03-06 44 views
-1

我正在使用Ruby 2.4。如何计算字符串中字母的数量?这将包括重音“a”等。因此,例如一个字符串,它看起来像如何计算字符串中的字母数?

"A." 

有一个“信”等

"123ABC" 

字符串有三个。

+0

正则表达式? – epascarello

+3

请阅读“[问]”,包括链接页面,“[mcve]”和“[Stack Overflow用户需要多少研究工作?](http://meta.stackoverflow.com/questions/261592)”。我们希望看到你的努力的证据,你尝试了什么?你搜索了什么,没有找到任何东西?你找到了什么,但没有帮助吗?你是否尝试编写代码?如果不是,为什么?是最小的代码示例,它显示了你所尝试的以及为什么它没有工作?没有它,看起来你没有尝试并且希望我们为你写。 –

回答

7

要说明任何Unicode字符,您可以使用\p{}构造。检查Regexp docs了解更多详情。

实施例:

'Aèméôfg1a'.scan(/[\p{L}]/).count 
=> 8 
'A.èmôfg1a'.scan(/[\p{L}]/).count 
=> 7 
+6

...或者使用POSIX括号表达式:'' Aèméôfg1a'.scan(/ [[:alpha:] /)。count#=> 8'。 –

相关问题