我只想弄清楚以下Ruby中的含义。
"([^"]*)"$/
我目前在Ruby中使用黄瓜有以下代码示例:
require "watir-webdriver"
require "rspec/expectations"
Given /^I have entered "([^"]*)" into the query$/ do |term|
@browser ||= Watir::Browser.new :firefox
@browser.goto "google.com"
@browser.text_field(:name => "q").set term
end
When /^I click "([^"]*)"$/ do |button_name|
@browser.button.click
end
Then /^I should see some results$/ do
@browser.div(:id => "resultStats").wait_until_present
@browser.div(:id => "resultStats").should exist
@browser.close
end
目前我理解它正在进行逻辑检查,点击了一个按钮。我做了一些研究,并发现以下Ruby中的符号含义(因为我是Ruby的新手)
? = method returns a boolean value.
$ = global variable
@ = instance variable
@@ = class variable.
^ = bitwise XOR operator.
* = unpack array
我无法找到命令的作用。我试图澄清函数如何与变量相关联,我认为这是我的最终线索。
非常感谢您的任何帮助。
答案 0 :(得分:7)
这是一个正则表达式。表达式包含在“/”字符之间。
通过示例并使用您的代码:
/^I have entered "([^"]*)" into the query$/
被解释为一个字符串:
有关Ruby和正则表达式的更多信息,请参阅http://www.tutorialspoint.com/ruby/ruby_regular_expressions.htm。