Module pl.stringx

Python-style extended string library.

see 3.6.1 of the Python reference. If you want to make these available as string methods, then say stringx.import() to bring them into the standard string table.

See the Guide

Dependencies: pl.utils

Functions

isalpha (s) does s only contain alphabetic characters?.
isdigit (s) does s only contain digits?.
isalnum (s) does s only contain alphanumeric characters?.
isspace (s) does s only contain spaces?.
islower (s) does s only contain lower case characters?.
isupper (s) does s only contain upper case characters?.
join (self, seq) concatenate the strings using this string as a delimiter.
startswith (self, s2) does string start with the substring?.
endswith (s, send) does string end with the given substring?.
expandtabs (self, n) replace all tabs in s with n spaces.
lfind (self, sub, i1) find index of first instance of sub in s from the left.
rfind (self, sub, first, last) find index of first instance of sub in s from the right.
replace (s, old, new, n) replace up to n instances of old by new in the string s.
split (self, re, n) split a string into a list of strings using a delimiter.
splitv (self, re) split a string using a pattern.
count (self, sub) count all instances of substring in string.
ljust (self, w, ch) left-justify s with width w.
rjust (s, w, ch) right-justify s with width w.
center (s, w, ch) center-justify s with width w.
lstrip (self, chrs) trim any whitespace on the left of s.
rstrip (s, chrs) trim any whitespace on the right of s.
strip (self, chrs) trim any whitespace on both left and right of s.
partition (self, ch) partition the string using first occurance of a delimiter
rpartition (self, ch) partition the string p using last occurance of a delimiter
at (self, idx) return the ‘character’ at the index.
lines (self) return an interator over all lines in a string
title (self) iniital word letters uppercase (‘title case’).
shorten (self, sz, tail) return a shorted version of a string.


Functions

isalpha (s)
does s only contain alphabetic characters?.

Parameters:

  • s: a string
isdigit (s)
does s only contain digits?.

Parameters:

  • s: a string
isalnum (s)
does s only contain alphanumeric characters?.

Parameters:

  • s: a string
isspace (s)
does s only contain spaces?.

Parameters:

  • s: a string
islower (s)
does s only contain lower case characters?.

Parameters:

  • s: a string
isupper (s)
does s only contain upper case characters?.

Parameters:

  • s: a string
join (self, seq)
concatenate the strings using this string as a delimiter.

Parameters:

  • self: the string
  • seq: a table of strings or numbers

Usage:

    (' '):join {1,2,3} == '1 2 3'
startswith (self, s2)
does string start with the substring?.

Parameters:

  • self: the string
  • s2: a string
endswith (s, send)
does string end with the given substring?.

Parameters:

  • s: a string
  • send: a substring or a table of suffixes
expandtabs (self, n)
replace all tabs in s with n spaces. If not specified, n defaults to 8. with 0.9.5 this now correctly expands to the next tab stop (if you really want to just replace tabs, use :gsub(‘\t’,‘ ’) etc)

Parameters:

  • self: the string
  • n: number of spaces to expand each tab, (default 8)
lfind (self, sub, i1)
find index of first instance of sub in s from the left.

Parameters:

  • self: the string
  • sub: substring
  • i1: start index
rfind (self, sub, first, last)
find index of first instance of sub in s from the right.

Parameters:

  • self: the string
  • sub: substring
  • first: first index
  • last: last index
replace (s, old, new, n)
replace up to n instances of old by new in the string s. if n is not present, replace all instances.

Parameters:

  • s: the string
  • old: the target substring
  • new: the substitution
  • n: optional maximum number of substitutions

Returns:

  1. result string
  2. the number of substitutions
split (self, re, n)
split a string into a list of strings using a delimiter.

Parameters:

  • self: the string
  • re: a delimiter (defaults to whitespace)
  • n: maximum number of results

Usage:

  • #(('one two'):split()) == 2
  • ('one,two,three'):split(',') == List{'one','two','three'}
  • ('one,two,three'):split(',',2) == List{'one','two,three'}
splitv (self, re)
split a string using a pattern. Note that at least one value will be returned!

Parameters:

  • self: the string
  • re: a Lua string pattern (defaults to whitespace)

Usage:

    a,b = line:splitv('=')

Returns:

    the parts of the string
count (self, sub)
count all instances of substring in string.

Parameters:

  • self: the string
  • sub: substring
ljust (self, w, ch)
left-justify s with width w.

Parameters:

  • self: the string
  • w: width of justification
  • ch: padding character, default ‘ ’
rjust (s, w, ch)
right-justify s with width w.

Parameters:

  • s: the string
  • w: width of justification
  • ch: padding character, default ‘ ’
center (s, w, ch)
center-justify s with width w.

Parameters:

  • s: the string
  • w: width of justification
  • ch: padding character, default ‘ ’
lstrip (self, chrs)
trim any whitespace on the left of s.

Parameters:

  • self: the string
  • chrs: default space, can be a string of characters to be trimmed
rstrip (s, chrs)
trim any whitespace on the right of s.

Parameters:

  • s: the string
  • chrs: default space, can be a string of characters to be trimmed
strip (self, chrs)
trim any whitespace on both left and right of s.

Parameters:

  • self: the string
  • chrs: default space, can be a string of characters to be trimmed
partition (self, ch)
partition the string using first occurance of a delimiter

Parameters:

  • self: the string
  • ch: delimiter

Returns:

  1. part before ch
  2. ch
  3. part after ch
rpartition (self, ch)
partition the string p using last occurance of a delimiter

Parameters:

  • self: the string
  • ch: delimiter

Returns:

  1. part before ch
  2. ch
  3. part after ch
at (self, idx)
return the ‘character’ at the index.

Parameters:

  • self: the string
  • idx: an index (can be negative)

Returns:

    a substring of length 1 if successful, empty string otherwise.
lines (self)
return an interator over all lines in a string

Parameters:

  • self: the string

Returns:

    an iterator
title (self)
iniital word letters uppercase (‘title case’). Here ‘words’ mean chunks of non-space characters.

Parameters:

  • self: the string

Returns:

    a string with each word’s first letter uppercase
shorten (self, sz, tail)
return a shorted version of a string.

Parameters:

  • self: the string
  • sz: the maxinum size allowed
  • tail: true if we want to show the end of the string (head otherwise)
generated by LDoc 1.2