Ответ 1
Будет ли это работать?
/products/product[contains(categorie,'Kinderwagens') or contains(categorie,'Wonderwagens')]
Существует аналогичный вопрос здесь
У меня есть простой xpath
/products/product[contains(categorie,'Kinderwagens')]
Это работает, но теперь, как я могу фильтровать несколько значений категории
как
/products/product[contains(categorie,'Kinderwagens')] +
/products/product[contains(categorie,'Kinderwagens')]
Будет ли это работать?
/products/product[contains(categorie,'Kinderwagens') or contains(categorie,'Wonderwagens')]
Существует аналогичный вопрос здесь
Вы действительно хотите содержать()? Очень часто люди используют contains() для проверки того, содержит ли node значение, когда они должны использовать "=". Разница в том, что если элемент категории имеет строковое значение "Kinderwagens", то categorie = 'wagens'
является ложным, но contains(categorie, 'wagens')
является истинным.
Если вы действительно намеревались "=", то в XPath 2.0 вы можете написать [categorie = ('Kinderwagens', 'Wonderwagens')]
. Если вы все еще используете XPath 1.0, вам нужны два отдельных сравнения с "или".