Skip to content

string

pixeltable.functions.string

Pixeltable UDFs for StringType. It closely follows the Pandas pandas.Series.str API.

Example:

import pixeltable as pxt
from pixeltable.functions import string as pxt_str

t = pxt.get_table(...)
t.select(pxt_str.capitalize(t.str_col)).collect()

capitalize

capitalize(self: String) -> String

Return string with its first character capitalized and the rest lowercased.

Equivalent to str.capitalize().

casefold

casefold(self: String) -> String

Return a casefolded copy of string.

Equivalent to str.casefold().

center

center(self: String, width: Int, fillchar: String = ' ') -> String

Return a centered string of length width.

Equivalent to str.center().

Parameters:

  • width (Int) –

    Total width of the resulting string.

  • fillchar (String, default: ' ' ) –

    Character used for padding.

contains

contains(
    self: String,
    pattern: String,
    case: Bool = True,
    flags: Int = 0,
    regex: Bool = True,
) -> Bool

Test if string contains pattern or regex.

Parameters:

  • pattern (String) –

    string literal or regular expression

  • case (Bool, default: True ) –

    if False, ignore case

  • flags (Int, default: 0 ) –

    flags for the re module

  • regex (Bool, default: True ) –

    if True, treat pattern as a regular expression

count

count(self: String, pattern: String, flags: Int = 0) -> Int

Count occurrences of pattern or regex.

Parameters:

  • pattern (String) –

    string literal or regular expression

  • flags (Int, default: 0 ) –

    flags for the re module

endswith

endswith(self: String, pattern: String) -> Bool

Return True if the string ends with the specified suffix, otherwise return False.

Equivalent to str.endswith().

Parameters:

  • pattern (String) –

    string literal

fill

fill(self: String, width: Int, **kwargs: None) -> String

Wraps the single paragraph in string, and returns a single string containing the wrapped paragraph.

Equivalent to textwrap.fill().

Parameters:

  • width (Int) –

    Maximum line width.

  • kwargs (None, default: {} ) –

    Additional keyword arguments to pass to textwrap.fill().

find

find(
    self: String,
    substr: String,
    start: Optional[Int] = 0,
    end: Optional[Int] = None,
) -> Int

Return the lowest index in string where substr is found within the slice s[start:end].

Equivalent to str.find().

Parameters:

  • substr (String) –

    substring to search for

  • start (Optional[Int], default: 0 ) –

    slice start

  • end (Optional[Int], default: None ) –

    slice end

findall

findall(self: String, pattern: String, flags: Int = 0) -> Json

Find all occurrences of a regular expression pattern in string.

Equivalent to re.findall().

Parameters:

  • pattern (String) –

    regular expression pattern

  • flags (Int, default: 0 ) –

    flags for the re module

format

format(self: String, *args: None, **kwargs: None) -> String

Perform string formatting.

Equivalent to str.format().

fullmatch

fullmatch(
    self: String, pattern: String, case: Bool = True, flags: Int = 0
) -> Bool

Determine if string fully matches a regular expression.

Equivalent to re.fullmatch().

Parameters:

  • pattern (String) –

    regular expression pattern

  • case (Bool, default: True ) –

    if False, ignore case

  • flags (Int, default: 0 ) –

    flags for the re module

index

index(
    self: String,
    substr: String,
    start: Optional[Int] = 0,
    end: Optional[Int] = None,
) -> Int

Return the lowest index in string where substr is found within the slice [start:end]. Raises ValueError if substr is not found.

Equivalent to str.index().

Parameters:

  • substr (String) –

    substring to search for

  • start (Optional[Int], default: 0 ) –

    slice start

  • end (Optional[Int], default: None ) –

    slice end

isalnum

isalnum(self: String) -> Bool

Return True if all characters in the string are alphanumeric and there is at least one character, False otherwise.

Equivalent to [str.isalnum()](https://docs.python.org/3/library/stdtypes.html#str.isalnum

isalpha

isalpha(self: String) -> Bool

Return True if all characters in the string are alphabetic and there is at least one character, False otherwise.

Equivalent to str.isalpha().

isascii

isascii(self: String) -> Bool

Return True if the string is empty or all characters in the string are ASCII, False otherwise.

Equivalent to str.isascii().

isdecimal

isdecimal(self: String) -> Bool

Return True if all characters in the string are decimal characters and there is at least one character, False otherwise.

Equivalent to str.isdecimal().

isdigit

isdigit(self: String) -> Bool

Return True if all characters in the string are digits and there is at least one character, False otherwise.

Equivalent to str.isdigit().

isidentifier

isidentifier(self: String) -> Bool

Return True if the string is a valid identifier according to the language definition, False otherwise.

Equivalent to str.isidentifier()

islower

islower(self: String) -> Bool

Return True if all cased characters in the string are lowercase and there is at least one cased character, False otherwise.

Equivalent to str.islower()

isnumeric

isnumeric(self: String) -> Bool

Return True if all characters in the string are numeric characters, False otherwise.

Equivalent to str.isnumeric()

isspace

isspace(self: String) -> Bool

Return True if there are only whitespace characters in the string and there is at least one character, False otherwise.

Equivalent to str.isspace()

istitle

istitle(self: String) -> Bool

Return True if the string is a titlecased string and there is at least one character, False otherwise.

Equivalent to str.istitle()

isupper

isupper(self: String) -> Bool

Return True if all cased characters in the string are uppercase and there is at least one cased character, False otherwise.

Equivalent to str.isupper()

join

join(sep: String, elements: Json) -> String

Return a string which is the concatenation of the strings in elements.

Equivalent to str.join()

len

len(self: String) -> Int

Return the number of characters in the string.

Equivalent to len(str)

ljust

ljust(self: String, width: Int, fillchar: String = ' ') -> String

Return the string left-justified in a string of length width.

Equivalent to str.ljust()

Parameters:

  • width (Int) –

    Minimum width of resulting string; additional characters will be filled with character defined in fillchar.

  • fillchar (String, default: ' ' ) –

    Additional character for filling.

lower

lower(self: String) -> String

Return a copy of the string with all the cased characters converted to lowercase.

Equivalent to str.lower()

lstrip

lstrip(self: String, chars: Optional[String] = None) -> String

Return a copy of the string with leading characters removed. The chars argument is a string specifying the set of characters to be removed. If omitted or None, whitespace characters are removed.

Equivalent to str.lstrip()

Parameters:

  • chars (Optional[String], default: None ) –

    The set of characters to be removed.

match

match(self: String, pattern: String, case: Bool = True, flags: Int = 0) -> Bool

Determine if string starts with a match of a regular expression

Parameters:

  • pattern (String) –

    regular expression pattern

  • case (Bool, default: True ) –

    if False, ignore case

  • flags (Int, default: 0 ) –

    flags for the re module

normalize

normalize(self: String, form: String) -> String

Return the Unicode normal form.

Equivalent to unicodedata.normalize()

Parameters:

  • form (String) –

    Unicode normal form ('NFC', 'NFKC', 'NFD', 'NFKD')

pad

pad(
    self: String, width: Int, side: String = "left", fillchar: String = " "
) -> String

Pad string up to width

Parameters:

  • width (Int) –

    Minimum width of resulting string; additional characters will be filled with character defined in fillchar.

  • side (String, default: 'left' ) –

    Side from which to fill resulting string ('left', 'right', 'both')

  • fillchar (String, default: ' ' ) –

    Additional character for filling

partition

partition(self: String, sep: String = ' ') -> Json

Splits string at the first occurrence of sep, and returns 3 elements containing the part before the separator, the separator itself, and the part after the separator. If the separator is not found, return 3 elements containing string itself, followed by two empty strings.

removeprefix

removeprefix(self: String, prefix: String) -> String

Remove prefix. If the prefix is not present, returns string.

removesuffix

removesuffix(self: String, suffix: String) -> String

Remove suffix. If the suffix is not present, returns string.

repeat

repeat(self: String, n: Int) -> String

Repeat string n times.

replace

replace(
    self: String,
    pattern: String,
    repl: String,
    n: Int = -1,
    case: Bool = True,
    flags: Int = 0,
    regex: Bool = False,
) -> String

Replace occurrences of pattern with repl.

Equivalent to str.replace() or re.sub(), depending on the value of regex.

Parameters:

  • pattern (String) –

    string literal or regular expression

  • repl (String) –

    replacement string

  • n (Int, default: -1 ) –

    number of replacements to make (-1 for all)

  • case (Bool, default: True ) –

    if False, ignore case

  • flags (Int, default: 0 ) –

    flags for the re module

  • regex (Bool, default: False ) –

    if True, treat pattern as a regular expression

rfind

rfind(
    self: String,
    substr: String,
    start: Optional[Int] = 0,
    end: Optional[Int] = None,
) -> Int

Return the highest index where substr is found, such that substr is contained within [start:end].

Equivalent to str.rfind().

Parameters:

  • substr (String) –

    substring to search for

  • start (Optional[Int], default: 0 ) –

    slice start

  • end (Optional[Int], default: None ) –

    slice end

rindex

rindex(
    self: String,
    substr: String,
    start: Optional[Int] = 0,
    end: Optional[Int] = None,
) -> Int

Return the highest index where substr is found, such that substr is contained within [start:end]. Raises ValueError if substr is not found.

Equivalent to str.rindex().

rjust

rjust(self: String, width: Int, fillchar: String = ' ') -> String

Return the string right-justified in a string of length width.

Equivalent to str.rjust().

Parameters:

  • width (Int) –

    Minimum width of resulting string.

  • fillchar (String, default: ' ' ) –

    Additional character for filling.

rpartition

rpartition(self: String, sep: String = ' ') -> Json

This method splits string at the last occurrence of sep, and returns a list containing the part before the separator, the separator itself, and the part after the separator.

rstrip

rstrip(self: String, chars: Optional[String] = None) -> String

Return a copy of string with trailing characters removed.

Equivalent to str.rstrip().

Parameters:

  • chars (Optional[String], default: None ) –

    The set of characters to be removed. If omitted or None, whitespace characters are removed.

slice

slice(
    self: String,
    start: Optional[Int] = None,
    stop: Optional[Int] = None,
    step: Optional[Int] = None,
) -> String

Return a slice.

Parameters:

  • start (Optional[Int], default: None ) –

    slice start

  • stop (Optional[Int], default: None ) –

    slice end

  • step (Optional[Int], default: None ) –

    slice step

slice_replace

slice_replace(
    self: String,
    start: Optional[Int] = None,
    stop: Optional[Int] = None,
    repl: Optional[String] = None,
) -> String

Replace a positional slice with another value.

Parameters:

  • start (Optional[Int], default: None ) –

    slice start

  • stop (Optional[Int], default: None ) –

    slice end

  • repl (Optional[String], default: None ) –

    replacement value

startswith

startswith(self: String, pattern: String) -> Int

Return True if string starts with pattern, otherwise return False.

Equivalent to str.startswith().

Parameters:

  • pattern (String) –

    string literal

strip

strip(self: String, chars: Optional[String] = None) -> String

Return a copy of string with leading and trailing characters removed.

Equivalent to str.strip().

Parameters:

  • chars (Optional[String], default: None ) –

    The set of characters to be removed. If omitted or None, whitespace characters are removed.

swapcase

swapcase(self: String) -> String

Return a copy of string with uppercase characters converted to lowercase and vice versa.

Equivalent to str.swapcase().

title

title(self: String) -> String

Return a titlecased version of string, i.e. words start with uppercase characters, all remaining cased characters are lowercase.

Equivalent to str.title().

upper

upper(self: String) -> String

Return a copy of string converted to uppercase.

Equivalent to str.upper().

wrap

wrap(self: String, width: Int, **kwargs: None) -> Json

Wraps the single paragraph in string so every line is at most width characters long. Returns a list of output lines, without final newlines.

Equivalent to textwrap.fill().

Parameters:

  • width (Int) –

    Maximum line width.

  • kwargs (None, default: {} ) –

    Additional keyword arguments to pass to textwrap.fill().

zfill

zfill(self: String, width: Int) -> String

Pad a numeric string with ASCII 0 on the left to a total length of width.

Equivalent to str.zfill().

Parameters:

  • width (Int) –

    Minimum width of resulting string.