UNPKG

@uwdata/mosaic-sql

Version:

SQL query construction and analysis.

67 lines 2.22 kB
import { asLiteral } from '../util/ast.js'; import { argsList, fn } from '../util/function.js'; function strFn(name, expr, ...args) { return fn(name, expr, ...(argsList(args).map(asLiteral))); } /** * Function that returns true if a string contains a regexp pattern, * false otherwise. * @param string The string match against. * @param pattern The regular expression pattern to match. * @param options Regular expression options: * 'c': case-sensitive matching * 'i': case-insensitive matching * 'l': match literals instead of regular expression tokens * 'm', 'n', 'p': newline sensitive matching * 'g': global replace, only available for regexp_replace * 's': non-newline sensitive matching */ export function regexp_matches(string, pattern, options) { return strFn('regexp_matches', string, pattern, options); } /** * Function that returns true if search_string is found within string. * @param string The string to match against. * @param search_string The substring to search for. */ export function contains(string, search_string) { return strFn('contains', string, search_string); } /** * Function that returns true if string begins with search_string. * @param string The string to match against. * @param search_string The substring to search for. */ export function prefix(string, search_string) { return strFn('starts_with', string, search_string); } /** * Function that returns true if string ends with search_string. * @param string The string to match against. * @param search_string The substring to search for. */ export function suffix(string, search_string) { return strFn('ends_with', string, search_string); } /** * Function that converts string to lower case. * @param string The string to convert. */ export function lower(string) { return strFn('lower', string); } /** * Function that converts string to upper case. * @param string The string to convert. */ export function upper(string) { return strFn('upper', string); } /** * Function that returns the number of characters in string. * @param value The string to measure. */ export function length(value) { return strFn('length', value); } //# sourceMappingURL=string.js.map