如何计算字符串中的字母数?

Dav*_*ave -1 ruby string count

我正在使用Ruby 2.4.如何计算字符串中的字母数?这将包括重音"a"之类的东西.例如,一个看起来像的字符串

"A."
Run Code Online (Sandbox Code Playgroud)

有一个"字母"和一个字符串

"123ABC"
Run Code Online (Sandbox Code Playgroud)

有三个.

Aeg*_*gis 7

要考虑任何Unicode字符,您可以使用该\p{}构造.查看Regexp文档以获取更多详细信息.

例:

'Aèméôfg1a'.scan(/[\p{L}]/).count 
=> 8
'A.èmôfg1a'.scan(/[\p{L}]/).count
=> 7
Run Code Online (Sandbox Code Playgroud)

  • ...或使用POSIX括号表达式:''Aèméôfg1a'.scan(/ [[:alpha:]] /).count#=> 8`. (6认同)