Usually locating elements by xpath is a bad idea.
Try other approaches such as:
- Locating by CSS Selector (should be your FIRST approach everytime) (This little guide will help you understand them). This includes the ability to specify patterns on element attributes such as:
[attribute~=value] [title~=flower] Selects all elements with a title attribute containing the word "flower"
- Locating by any other strategy EXCEPT xpath
- Locating by xpath as the very last resort.
Locating by xpath is considered an expensive operation and is extremely difficult to mantain.
You can also use whatever strategy you like but getting a collection of elements and later filtering them out by means of your favourite programming technique (i.e using Java8 Streams api), o just running another element search inside your elements such as:
element.findBy...
I strongly recommend adopting css selectors, as they are being heavily used to add style to any modern web application. So if the developer managed to resolve styling with css selectors, you will also be able to.