home contribute faq download

FunctX XQuery Functions

functx:substring-before-if-contains

Performs substring-before, returning the entire string if it does not contain the delimiter

Google
Webxqueryfunctions.com

Description

The functx:substring-before-if-contains function performs substring-before, returning the entire string if it does not contain the delimiter. It differs from the built-in fn:substring-before function, which returns a zero-length string if the delimiter is not found.

Arguments and Return Type

NameTypeDescription
$arg xs:string? the string to substring
$delim xs:string the delimiter
return value xs:string?

XQuery Function Declaration

See XSLT definition.
declare namespace functx = "http://www.functx.com";
declare function functx:substring-before-if-contains
  ( $arg as xs:string? ,
    $delim as xs:string )  as xs:string? {

   if (contains($arg,$delim))
   then substring-before($arg,$delim)
   else $arg
 } ;

Examples

XQuery ExampleResults
functx:substring-before-if-contains('abcd','c')
ab
functx:substring-before-if-contains('abcd','x')
abcd

See Also

fn:substring-beforeThe substring before the first occurrence of a delimiter
functx:substring-before-lastThe substring before the last occurrence of a delimiter
functx:substring-after-if-containsPerforms substring-after, returning the entire string if it does not contain the delimiter

History

Published OnLast UpdatedContributor(s)
2006-06-272007-02-26Priscilla Walmsley, Datypic, pwalmsley@datypic.com, http://www.datypic.com
Datypic XQuery Services

Recommended Reading:

XQuery