-1

我需要一些帮助来理解以下用于将句子拆分为单词的 Ruby 代码。

class String
  def words
    scan(/\w[\w\'\-]*/)
  end
end

这是实际的方法:

"This is a test of words' capabilities".words

返回

["This", "is", "a", "test", "of", "words'", "capabilities"]

正则表达式 (/\w[\w\'-]*/) 究竟是什么意思?

4

2 回答 2

1

基本上可以转化为:

/ : 表示正则表达式的开始
\w : 找我一个单词字符 (通常是 [A-Za-z0-9_])
[\w\'-]* : 然后找我零个或多个单词字符、撇号或破折号
/ : 表示正则表达式结束

Ruby 代码正在查找该表达式的所有匹配项(任何可以包含撇号和破折号但不能以它们开头的完整单词字符系列),并将其存储到找到的数组中。

于 2013-02-15T21:23:12.370 回答
1

我确定您可以找到正则表达式文档。一个有用的资源,可以回答您的问题并总体了解更多信息!

于 2013-02-15T21:24:13.743 回答