ruby-on-rails – 如何在Capybara finder中使用正則表示式?

以下作品很棒:

find "img[src='https://www.example.com/image']"

但我也想找到

find "img[src='https://www.example.com/image?foo=bar']"

如何在finder中的屬性中使用正則表示式?

您可以使用^ =檢查屬性是否以特定值開頭:
find("img[src^='https://www.example.com/image']")

文章 The Skinny on CSS Attribute Selectors 描述了各種檢查(等於,開始,結束等):

#Equals
find("img[src='https://www.example.com/image']")

#Contains somewhere
find("img[src*='https://www.example.com/image']")

#Begins with
find("img[src^='https://www.example.com/image']")

#Ends with
find("img[src$='https://www.example.com/image']")

翻譯自:https://stackoverflow.com/questions/14635474/how-to-use-regex-in-a-capybara-finder