XPath 2.0
Это выражение XPath 2.0,
//a[matches(@id, "^([^-]*-){3}[^-]*$")]
будет выбирать все элементы a
с атрибутами id
, которые имеют 3 -
символов в своем значении.Его можно легко адаптировать для подсчета символов, отличных от -
, или для указания, что определенные символы должны находиться между -
.
XPath 1.0
Это выражение XPath 1.0,
//a[string-length(@id) - string-length(translate(@id,"-","")) = 3]
выберет все a
элементы с id
атрибутами, которые имеют 3 -
символов в своем значении.