检查字符串中是否包含大于15个字符的单词

Jaq*_*aqx 2 ruby regex ruby-on-rails

我想制作一个条件语句来检查是否:

comment.user.name
Run Code Online (Sandbox Code Playgroud)

(可能返回类似的内容"Montgomery Philips Ridiculouslylonglastname")包含任何超过15个字符的单词.

就像是:

if comment.user.name.split(" ").???
Run Code Online (Sandbox Code Playgroud)

squ*_*guy 7

这个怎么样?

comment.user.name.split.any? { |x| x.length > 20 }
Run Code Online (Sandbox Code Playgroud)

这是它的精彩enumerablemixin文档.

  • 它应该只是"拆分"而不是"拆分"('.')`? (2认同)

Loa*_*oof 5

仅供参考(因为您已经找到了合适的答案),使用正则表达式:

/\b[a-z]{15,}\b/i
Run Code Online (Sandbox Code Playgroud)

如果找到匹配项,则会有超过15个字符的单词(标题中为20个字符).