我对XQuery非常陌生,并坦率地发现学习曲线难以置信地陡峭。XQuery:从字符串中提取数字用于比较
我有一个XML结构看起来是这样的:
<root>
<product>
<size>500 units</size>
</product>
<product>
<size>1000 units</size>
</product>
<product>
<size>Unlimited units</size>
</product>
</root>
我需要写一个返回的所有节点其中大小数值小于说1000所以我莫名其妙的XQuery语句需要确定这个数值(忽略任何文本)来执行我假设的'le'操作。
在此之上,则存在节点将具有在所有(例如,“无限单元”)没有数字,在这种情况下,需要将其视为具有说1000000
的值的可能性有没有办法做到这一点?我已经尝试过fn的各种组合:替换(blah,'\ D','')并将其转换为xs:int,但我似乎无法使其正常工作。
任何指导将不胜感激。
1起见了一点,但我已经表明,只是一个简单的XPath表达式的足够清楚起见的位。 – 2011-01-25 22:01:34