diff options
author | Zach Aysan <zachaysan@gmail.com> | 2015-07-21 15:49:05 -0400 |
---|---|---|
committer | Zach Aysan <zachaysan@gmail.com> | 2015-07-21 15:49:05 -0400 |
commit | d2c992c03d498b7427ed393fc203609578fd6c96 (patch) | |
tree | 93354a0ea9bed011f27dc03cb79aa392aca53711 /lib | |
parent | 99b29b3e97a3e6dd3e3396a00d9cf97fb2f538a3 (diff) | |
download | Nim-d2c992c03d498b7427ed393fc203609578fd6c96.tar.gz |
Add docs
Diffstat (limited to 'lib')
-rw-r--r-- | lib/pure/strutils.nim | 27 |
1 files changed, 27 insertions, 0 deletions
diff --git a/lib/pure/strutils.nim b/lib/pure/strutils.nim index 4def0b3e8..3c6421bd5 100644 --- a/lib/pure/strutils.nim +++ b/lib/pure/strutils.nim @@ -1396,6 +1396,20 @@ proc format*(formatstr: string, a: varargs[string, `$`]): string {.noSideEffect, {.pop.} proc removeSuffix*(s: var string, chars: set[char] = Newlines) {.rtl.} = + ## Removes the first matching character from the string (in-place) given a + ## set of characters. If the set of characters is only equal to `Newlines` + ## then it will remove both the newline and return feed. + ## .. code-block:: nim + ## var + ## userInput = "Hello World!\r\n" + ## otherInput = "Hello!?!" + ## userInput.removeSuffix + ## userInput == "Hello World!" + ## userInput.removeSuffix({'!', '?'}) + ## userInput == "Hello World" + ## otherInput.removeSuffix({'!', '?'}) + ## otherInput == "Hello!?" + var last = len(s) - 1 if chars == Newlines: @@ -1412,9 +1426,22 @@ proc removeSuffix*(s: var string, chars: set[char] = Newlines) {.rtl.} = s.setLen(last + 1) proc removeSuffix*(s: var string, c: char) {.rtl.} = + ## Removes a single character (in-place) from a string. + ## .. code-block:: nim + ## var + ## table = "users" + ## table.removeSuffix('s') + ## table == "user" removeSuffix(s, chars = {c}) proc removeSuffix*(s: var string, suffix: string) {.rtl.} = + ## Remove the first matching suffix (in-place) from a string. + ## .. code-block:: nim + ## var + ## answers = "yeses" + ## answers.removeSuffix("es") + ## answers == "yes" + var newLen = s.len if s.endsWith(suffix): |