[xquery-talk] Help with trimming down an XPath expression

Jonathan Robie jonathan.robie at datadirect.com
Mon Apr 24 15:48:29 PDT 2006


I get the impression that this would be a whitespace delimited keyword? 
If so, you could also use fn:tokenize():

let $p := <pre>int i;</pre>
return
    tokenize($p, "\s+")[1] = ("int", "void", "string", "bool", "float"*)

Depending on your implementation, the performance of these solutions can 
vary widely.

Jonathan
*
Carlo Innocenti wrote:
> Maybe...
> //pre[matches(., "^(string|void|int|float|bool)")]
>
> Minollo
>
>
> At 01:29 PM 4/24/2006, Todd Ditchendorf wrote:
>> Hi gang,
>>
>> I'm looking for a way to trim this expression down:
>>
>>
>> //pre[starts-with(.,"string") or starts-with(.,"void") or 
>> starts-with(.,"int") or starts-with(.,"float") or starts-with(.,"bool")]
>>
>>
>>
>> Basically, I'm looking for an XPath 2.0 expression that will locate a 
>> <pre> element anywhere in my document whose string-value starts with 
>> one of : "string", "void", "int", "float", or "bool"
>>
>> Is there any way to express this a little more tersely?
>>
>>
>>
>>
>> Todd Ditchendorf
>
>
> _______________________________________________
> talk at xquery.com
> http://xquery.com/mailman/listinfo/talk


-- 
Read my Blog: http://blogs.datadirect.com/jonathan_robie/
Learn XQuery: http://media.datadirect.com/download/docs/ddxquery/tutorial_query.html
Learn XQJ (the JDBC for XQuery): http://www.datadirect.com/developer/xquery/topics/xqj_tutorial/
Get DataDirect XQuery: http://www.datadirect.com/products/xquery/



More information about the talk mailing list