Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/ruby/21.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何从slack ruby bot的字符串中提取值_Ruby_Ruby On Rails 5_Bots_Slack - Fatal编程技术网

如何从slack ruby bot的字符串中提取值

如何从slack ruby bot的字符串中提取值,ruby,ruby-on-rails-5,bots,slack,Ruby,Ruby On Rails 5,Bots,Slack,我正在尝试创建一个slackbot,它可以将传入的数据保存到数据库中 我使用了gemslackruby bot,我能够接收我的文本,但我想提取文本的特定部分,以保存在数据库中 鉴于收到的案文如下: 我在stackoverflow上工作了10个小时 我必须能够提取项目名称,stackoverflow,以及时间,即10。有办法吗 command 'activity', '/^Activity/' do |client, data, match| client.say(text: "#

我正在尝试创建一个slackbot,它可以将传入的数据保存到数据库中

我使用了gem
slackruby bot
,我能够接收我的文本,但我想提取文本的特定部分,以保存在数据库中

鉴于收到的案文如下:
  • 我在stackoverflow上工作了10个小时
我必须能够提取项目名称,stackoverflow,以及时间,即10。有办法吗

  command 'activity', '/^Activity/' do |client, data, match|
    client.say(text: "#{data.text}", channel: data.channel)
  end

这只是一个获取命令活动的示例代码。

无论您在哪里收到字符串,都可以使用正则表达式和
string 35; scan
来获取数据

"I worked on 'stackoverflow' for 10 hours.".scan /'[^']+'|\d+/
#⇒ ["'stackoverflow'", "10"]

为清晰起见,文本已更新。