<root>
<div class="class1-s">a</div>
<div class="class1_a">b</div>
<div class=" class1+g ">b</div>
<div class="class1-s1">c</div>
<div class="class1-s134">c</div>
<div class="cls1-s134">c</div>
<div class="class1-s134">c</div>
<div c="zclass1-s1">c</div>
<div>c</div>
</root>
Есть вариант. Выбираем сначала по starts-with и потом считаем количество символов:
/root/div[starts-with(normalize-space(@class), 'class1') and string-length(normalize-space(@class)) = string-length('class1') + 2]
Или если очень хочется регулярок, то:
/root/div[matches(normalize-space(@class), '^class1..$')]