How to use regular expressions in a CSS locator?



We can use regular expressions in a CSS locator. We can identify elements by matching their attributes partially with the help of regular expressions. In CSS, there are multiple methods to achieve this. They are listed below βˆ’

  • Using the wild character *. This means the string contains our given text.

    Syntaxβˆ’ driver.find_element_by_css_selector("input[name*='sel']")

    It will search the input tag which contains the 'name' attribute containing 'sel' text.

  • Using the wild character ^. This means the string starts with our given text.

    Syntaxβˆ’ driver.find_element_by_css_selector("input[name^='Tut']")

    It will search the input tag which contains the 'name' attribute starting with 'Tut' text.

  • Using the wild character $. This means the string ends with our given text.

    Syntaxβˆ’ driver.find_element_by_css_selector("input[name$='nium']")

    It will search the input tag which contains the 'name' attribute ending with 'nium' text.

Example

Code Implementation with * wild character in css.

from selenium import webdriver
driver = webdriver.Chrome(executable_path="C:\chromedriver.exe")
# to maximize the browser window
driver.maximize_window()
#get method to launch the URL
driver.get("https://www.tutorialspoint.com/index.htm")
#to refresh the browser
driver.refresh()
# identifying the edit box with the help of * in css selector
driver. find_element_by_css_selector("input[id*='sc-i']").
send_keys("Selenium")
#to close the browser
driver.close()

Example

Code Implementation with ^ wild character in css.

from selenium import webdriver
driver = webdriver.Chrome(executable_path="C:\chromedriver.exe")
# to maximize the browser window
driver.maximize_window()
#get method to launch the URL
driver.get("https://www.tutorialspoint.com/index.htm")
#to refresh the browser
driver.refresh()
# identifying the edit box with the help of ^ in css selector
driver. find_element_by_css_selector("input[id^='gsc']").
send_keys("Selenium")
#to close the browser
driver.close()

Example

Code Implementation with $ wild character in css.

from selenium import webdriver
driver = webdriver.Chrome(executable_path="C:\chromedriver.exe")
# to maximize the browser window
driver.maximize_window()
#get method to launch the URL
driver.get("https://www.tutorialspoint.com/index.htm")
#to refresh the browser
driver.refresh()
# identifying the edit box with the help of $ in css selector
driver. find_element_by_css_selector("input[id$='id1']").
send_keys("Selenium")
#to close the browser
driver.close()
Updated on: 2021-11-19T11:50:54+05:30

5K+ Views

Kickstart Your Career

Get certified by completing the course

Get Started
Advertisements