Я бы поместил их в HashSet
, а затем отфильтровал символы, которых нет в этом наборе.
// put in a nice hash set for speedy lookups.
Set<Character> chars = new HashSet(Arrays.asList('1','2','3'));
// method 1
String foo = "abc123 foo !@#";
String newFoo = "";
for(int i = 0; i < foo.length(); i++){
char c = foo.charAt(i);
if(!chars.contains(c)) {
newFoo += c;
}
}
System.out.println(newFoo);
// method 2
String result = foo.chars()
.mapToObj(c -> (char)c)
.filter(c -> !chars.contains(c))
.map(c -> String.valueOf(c))
.collect(Collectors.joining(""));
System.out.println("result is: "+result);
Выражение XPath должно выглядеть так:
//td[contains(@label, 'Choice 1')]/input
Вы выбираете все элементы td
, у которых есть метка, содержащая Вариант 1
, а затем выбираете элементы input
внутри этих элементов td
.
EDIT : комментарий Томалака правильно предлагает улучшение, предотвращающее совпадение с «Вариантом 11» (или «Вариантом 12345», ...).