Alternative. Вы можете использовать XPath для извлечения текстовых узлов и их объединения. Сохраните результаты в 2 переменных и выполните сравнение.
XPath 2.0:
string-join(//*/*[position()<last()]/text()[normalize-space()])
или
string-join(//*[not(name()="ingestDate" or name()="itemRecordingTime")]/text()[normalize-space()])
Вывод:
String='test1testDesc1testItem1'
XPath 1.0 (массивный):
translate(concat(substring(normalize-space(string(//core)),1,string-length(normalize-space(string(//core)))-(string-length(normalize-space(string(//ingestDate)))+1)),substring(normalize-space(string(//specialized)),1,string-length(normalize-space(string(//specialized)))-(string-length(normalize-space(string(//itemRecordingTime)))+1)))," ","")
Вывод:
String='test1testDesc1testItem1'