1

背景として、次のような手順に一致する一般化された手順を記述しようとしています。

When I "click" on "send" button
When I "press" on that "clear" thingy
When I "select" some kind of "money" maker

引用符で囲まれているものを教えてください。

最適には、ステップは次のようになります

When(/regex here/) do |action, target|
   #do something here
end

私は試してみ(.*)"(.*)"(.*)"(.*)"(.*)ましたが、うまくいきますが、次のようなステップを書く必要があります

When(/(.*)"(.*)"(.*)"(.*)"(.*)/) do |unused, action, unused, target, unused|
   #do something here
end

もう 1 つの副作用は、.feature ファイルのステップ全体が強調表示されることです。これはマイナーですが、何が取得されているか (二重引用符で囲まれているか) を正確に把握できると便利です。

この目標を達成するための正規表現は何でしょうか?

4

1 に答える 1

3

[^"]文字以外のすべてに一致するように使用して"、キャプチャするグループのみを指定してみてください。例えば:

When(/"([^"]*)"[^"]*"([^"]*)"/) do |action, target|
   #do something here
end
于 2013-10-09T17:10:02.397 に答える