Module DA.Text¶
Functions for working with Text.
Functions¶
- replace
 : Text -> Text -> Text -> Text
Replace a subsequence everywhere it occurs. The first argument must not be empty.
- lines
 - 
Breaks a
Textvalue up into a list ofText’s at newline symbols. The resulting texts do not contain newline symbols. 
- words
 - 
Breaks a ‘Text’ up into a list of words, delimited by symbols representing white space.
 
- linesBy
 : (Text -> Bool) -> Text -> [Text]
A variant of
lineswith a custom test. In particular, if there is a trailing separator it will be discarded.
- wordsBy
 : (Text -> Bool) -> Text -> [Text]
A variant of
wordswith a custom test. In particular, adjacent separators are discarded, as are leading or trailing separators.
- intercalate
 - 
intercalateinserts the text argumenttin between the items intsand concatenates the result. 
- dropPrefix
 - 
dropPrefixdrops the given prefix from the argument. It returns the original text if the text doesn’t start with the given prefix. 
- dropSuffix
 - 
Drops the given suffix from the argument. It returns the original text if the text doesn’t end with the given suffix. Examples:
dropSuffix "!" "Hello World!" == "Hello World" dropSuffix "!" "Hello World!!" == "Hello World!" dropSuffix "!" "Hello World." == "Hello World."
 
- stripSuffix
 : Text -> Text -> Optional Text
Return the prefix of the second text if its suffix matches the entire first text. Examples:
stripSuffix "bar" "foobar" == Some "foo" stripSuffix "" "baz" == Some "baz" stripSuffix "foo" "quux" == None
- stripPrefix
 : Text -> Text -> Optional Text
The
stripPrefixfunction drops the given prefix from the argument text. It returnsNoneif the text did not start with the prefix.
- isPrefixOf
 - 
The
isPrefixOffunction takes two text arguments and returnsTrueif and only if the first is a prefix of the second. 
- isSuffixOf
 - 
The
isSuffixOffunction takes two text arguments and returnsTrueif and only if the first is a suffix of the second. 
- isInfixOf
 - 
The
isInfixOffunction takes two text arguments and returnsTrueif and only if the first is contained, wholly and intact, anywhere within the second. 
- takeWhile
 : (Text -> Bool) -> Text -> Text
The function
takeWhile, applied to a predicatepand a text, returns the longest prefix (possibly empty) of symbols that satisfyp.
- takeWhileEnd
 : (Text -> Bool) -> Text -> Text
The function ‘takeWhileEnd’, applied to a predicate
pand a ‘Text’, returns the longest suffix (possibly empty) of elements that satisfyp.
- dropWhile
 : (Text -> Bool) -> Text -> Text
dropWhile p treturns the suffix remaining aftertakeWhile p t.
- dropWhileEnd
 : (Text -> Bool) -> Text -> Text
dropWhileEnd p treturns the prefix remaining after dropping symbols that satisfy the predicatepfrom the end oft.
- splitOn
 - 
Break a text into pieces separated by the first text argument (which cannot be empty), consuming the delimiter.
 
- splitAt
 - 
Split a text before a given position so that for
0 <= n <= length t,length (fst (splitAt n t)) == n. 
- take
 - 
take n, applied to a textt, returns the prefix oftof lengthn, ortitself ifnis greater than the length oft. 
- drop
 - 
drop n, applied to a textt, returns the suffix oftafter the firstncharacters, or the emptyTextifnis greater than the length oft. 
- substring
 - 
Compute the sequence of symbols of length
lin the argument text starting ats. 
- isPred
 : (Text -> Bool) -> Text -> Bool
isPred f treturnsTrueiftis not empty andfisTruefor all symbols int.
- isAlphaNum
 - 
isAlphaNum tisTrueiftis not empty and consists only of alphanumeric symbols. 
- parseNumeric
 : Text -> Optional (Numeric n)
Attempt to parse a
Numericvalue from a givenText. To getSomevalue, the text must follow the regex(-|\+)?[0-9]+(\.[0-9]+)?In particular, the shorthands".12"and"12."do not work, but the value can be prefixed with+. Leading and trailing zeros are fine, however spaces are not. Examples:parseNumeric "3.14" == Some 3.14 parseNumeric "+12.0" == Some 12
- parseDecimal
 - 
Attempt to parse a
Decimalvalue from a givenText. To getSomevalue, the text must follow the regex(-|\+)?[0-9]+(\.[0-9]+)?In particular, the shorthands".12"and"12."do not work, but the value can be prefixed with+. Leading and trailing zeros are fine, however spaces are not. Examples:parseDecimal "3.14" == Some 3.14 parseDecimal "+12.0" == Some 12
 
- sha256
 - 
Computes the SHA256 hash of the UTF8 bytes of the
Text, and returns it in its hex-encoded form. The hex encoding uses lowercase letters.This function will crash at runtime if you compile DAML to DAML-LF < 1.2.
 
- toCodePoints
 - 
Convert a
Textinto a sequence of unicode code points. 
- fromCodePoints
 - 
Convert a sequence of unicode code points into a
Text. Raises an exception if any of the code points is invalid.