Я пытаюсь щелкнуть по определенной опции из инструкции select, используя Sikuli в Java.Sikuli Java найти параметр выбора, который содержит определенный текст
Учитывая это отборное заявление:
<select name="mySelect">
<option value="ab">AB 273xc Some Text</option>
<option value="cd">CD i8df4 Some More Text</option>
<option value="ef">EF q43th And Text Once More</option>
</select>
следующие работы, если я знаю, что полный точный текст, содержащийся в опции:
driver.findElement(By.xpath("//select[@name='mySelect']/option[.='CD i8df4 Some More Text']")).click();
Проблема заключается в том, что всегда есть случайный текст в строке (i8df4 в этом случае), который меняется каждый раз, поэтому я не буду знать, каким будет этот текст.
Поэтому я хочу нажать на опцию, которая содержит текст «Some More Text» в конце. Я вижу, что есть функция CONTAINS, но я не могу понять, как ее использовать в этом случае (если ее можно использовать).
Так нужно сделать какой-то поиска или регулярное выражение в опционной части, как это:
option[.='do pattern match here looking for Some More Text']
УДИВИТЕЛЬНЫЙ! Первый ответ - именно то, что мне нужно! Часть, которую я не мог понять, заключалась в том, чтобы положить период в CONTAINS в качестве первой строки, которая будет сравниваться со всеми атрибутами опций. И FYI атрибут value также генерируется случайным образом (о котором я забыл упомянуть), чтобы он не сработал. – jsherk