2011-01-18 3 views
0

값 요소가 들어있는 property라는 요소가있는 xml 파일이 있습니다. 언젠가 다른 연결된 시스템에서 값은 정수에서 소수점으로 바뀌므로 비교가 더 이상 작동하지 않습니다. 어쨌든 비교할 수있는 방법이 있습니까? Xml과 xpath가 아래에 따라옵니다.xpath 쿼리 값 비교 문제

XML :

<product> 
    <properties> 
     <property type="decimal" name="Volume" unit="l"> 
      <value>100,0</value> 
     </property> 
    </properties> 
</product> 

XPath는 :

/product/properties/property[@name='Volume' and value&lt;='200'] 

어떻게 내가 대신 진수 값으로 작업 할 수있는 XPath를 작성하려면 어떻게해야합니까?

감사합니다.

+1

이 fitst 변환 translate를 사용할 수 있습니다. 나는 지금 대답하는 것에 관심이 없다. – Flack

답변

0

당신은 당신은 정말 이전의 질문에 답변을 수용해야

/product/properties/property[@name='Volume' and translate(value, ',', '.')<='200'] 
+0

매력처럼 작동했습니다! 정규 대체()가 작동하지 않는 이유는 무엇입니까? 감사. – jinxen

+0

@ user270399는 * "어떻게 10 진수 값으로 작업 할 수있는 xpath를 쓰나요?"*라고 썼습니다. 따라서 XPath 1.0의 ** 숫자 데이터 유형은 double **입니다. 문제는 정밀도가 아니라 숫자 형식의 문자열 마스크입니다. –