re

Index

Overview

re defines regular expression functions, it’s intended to be a drop-in subset of python’s re module for starlark: https://docs.python.org/3/library/re.html

Functions

def compile

compile(pattern) Pattern

Compile a regular expression pattern into a regular expression object, which can be used for matching using its match(), search() and other methods.

Arguments
nametypedescription
patternstringregular expression pattern string

def findall

findall(pattern, text, flags=0)

Returns all non-overlapping matches of pattern in string, as a list of strings. The string is scanned left-to-right, and matches are returned in the order found. If one or more groups are present in the pattern, return a list of groups; this will be a list of tuples if the pattern has more than one group. Empty matches are included in the result.

Arguments
nametypedescription
patternstringregular expression pattern string
textstringstring to find within
flagsintinteger flags to control regex behaviour. reserved for future use

def match

match(pattern, string, flags=0)

If zero or more characters at the beginning of string match the regular expression pattern, return a corresponding match string tuple. Return None if the string does not match the pattern

Arguments
nametypedescription
patternstringregular expression pattern string
stringstringinput string to match

def split

split(pattern, text, maxsplit=0, flags=0)

Split text by the occurrences of pattern. If capturing parentheses are used in pattern, then the text of all groups in the pattern are also returned as part of the resulting list. If maxsplit is nonzero, at most maxsplit splits occur, and the remainder of the string is returned as the final element of the list.

Arguments
nametypedescription
patternstringregular expression pattern string
textstringinput string to split
maxsplitintmaximum number of splits to make. default 0 splits all matches
flagsintinteger flags to control regex behaviour. reserved for future use

def sub

sub(pattern, repl, text, count=0, flags=0)

Return the string obtained by replacing the leftmost non-overlapping occurrences of pattern in string by the replacement repl. If the pattern isn’t found, string is returned unchanged. repl can be a string or a function; if it is a string, any backslash escapes in it are processed. That is, \n is converted to a single newline character, \r is converted to a carriage return, and so forth.

Arguments
nametypedescription
patternstringregular expression pattern string
replstringstring to replace matches with
textstringinput string to replace
countintnumber of replacements to make, default 0 means replace all matches
flagsintinteger flags to control regex behaviour. reserved for future use

Types

type Pattern

Methods

def Pattern.match

Pattern.match(text, flags=0)

def Pattern.findall

Pattern.findall(text, flags=0)

def Pattern.split

Pattern.split(text, maxsplit=0, flags=0)

def Pattern.sub

Pattern.sub(repl, text, count=0, flags=0)