Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

How to use regex in a Capybara finder?

The following works great:

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

But I want to also find

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

How to use a regex within the attribute in the finder?

like image 962
B Seven Avatar asked Jan 31 '13 21:01

B Seven


1 Answers

You can check that an attribute starts with a certain value using ^=:

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

The article, The Skinny on CSS Attribute Selectors, describes the various checks (equals, starts with, ends with, etc.):

#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']")
like image 182
Justin Ko Avatar answered Sep 22 '22 01:09

Justin Ko