Я хотел бы вернуть номер позиции первого тега, который содержит выбранный текст в наборе тегов.
Я хочу настроить лист Google с 4 столбцами:
1: URL-адрес (https://www.castorama.fr/electricite/interrupteur-et-prise/interrupteur-et-prise-etanche/cat_id_4414.cat)
2: количество продуктов на странице категории:
=IMPORTXML($B4;"count(//p[@data-test-id='productTitle'])")
3: количество продуктов, название которых содержит "Legrand" или "Céliane with Netatmo":
=IMPORTXML($B4;"count(//p[@data-test-id='productTitle'][contains(.,'Céliane with Netatmo')or contains(.,'Legrand')])")
Приведенные выше формулы подходят. У меня проблемы с четвертым:
4: Позиция первого продукта, название которого содержит «Legrand» или «Céliane with Netatmo».
Например, столбец 2 возвращает 24 (продукты), а столбец 3 возвращает 12 (продукты). Если первый продукт - это продукт с «Legrand» или «Céliane with Netatmo», я хочу, чтобы столбец 4 возвращал 1. Если он находится на 4-й позиции, я хочу, чтобы он возвращал 4.
я пробовал
=IMPORTXML($B4;"//div//p[@data-test-id='productTitle'][.='Legrand']/preceding-subling::*)+1")
но кажется, что у меня нет правильного порядка для "// div // p". Бьюсь об заклад, это связано с элементами subling, до "/" у меня не должно быть правильных выбранных тегов.