At times like this it's useful to take a quick look at what other systems do, if they have such functions - e.g., are there precedents we should base our answer on? (In Java, Postgres, MySQL, ...)

On 9/28/15 6:03 PM, Jianfeng Jia wrote:
Hi Devs,

Another question about the string functions.

The example code on the 
http://asterixdb.ics.uci.edu/documentation/aql/functions.html#StringFunctions 
<http://asterixdb.ics.uci.edu/documentation/aql/functions.html#StringFunctions> 
shows that these two function are suppose to be called after contains(). I wonder 
what is the expected behavior if the they can't find the match pattern?

The current result is confusing.

e.g.
let $x := "substring"
return [ substring-before($x, "subx"), substring-after($x, “subx”)]

it will return
[ [ "subst", "" ]
  ]
Should we always return an empty string in such case, or throw an exception 
like “you shall filter the result by contain() first” ?
IMHO, I’d like to return a null string. Any opinion?


Best,

Jianfeng Jia
PhD Candidate of Computer Science
University of California, Irvine



Reply via email to