Custom String Helpers

March 6, 2020 ยท View on GitHub

These helpers provide some ability to do string manipulation.


Helpers.String.Append

SummaryAppend one string to another
ReturnsAppened string
Remarks
Parameters
strBase string
suffixString to append

Example

Context

{
    "a": "Lorem ipsum dolor sit amet",
    "b": ", consectetur adipiscing elit. Vivamus lacinia urna lectus."
}

Usage

<strong>result:</strong>
{{Helpers.String.Append a b}}
{{Helpers.String.Append a " or something"}}
{{Helpers.String.Append "something or" " another"}}

Returns

<strong>result:</strong>
Lorem ipsum dolor sit amet, consectetur adipiscing elit. Vivamus lacinia urna lectus.
Lorem ipsum dolor sit amet or something
something or another

Helpers.String.Ellipsis

SummaryTruncate a long string and append a ellipsis(...)
ReturnsTruncated string
Remarks
Parameters
strString to trucate
limitMax number of characters in final string(excluding ellipsis)

Example

Context

{
    "value": "Lorem ipsum dolor sit amet, consectetur adipiscing elit. Vivamus lacinia urna lectus."
}

Usage

<strong>result:</strong>
{{Helpers.String.Ellipsis value 10}}
{{Helpers.String.Ellipsis "something" 5}}

Returns

<strong>result:</strong>
Lorem ipsu...
somet...

Helpers.String.Join

SummaryJoin multiple strings together separated by the specified separator
ReturnsJoined string
RemarksCan be passed either an array of strings or a set of strings as arguments
Parameters
strArraystrings to join
separatorSeparator to used to delimit strings, default is an empty string

Example

Context

{
    "stringArray": [
        "Lorem",
        "ipsum",
        "dolor",
        "sit",
        "amet"
    ]
}

Usage

<strong>result:</strong>
{{Helpers.String.Join stringArray " "}}
{{Helpers.String.Join stringArray}}
{{Helpers.String.Join "Lorem" "ipsum" "dolor" "sit" "amet" " "}}
{{Helpers.String.Join "Lorem" "ipsum" "dolor" "sit" "amet" ""}}
{{Helpers.String.Join "Lorem" "ipsum" "dolor" "sit" "amet"}}

Returns

<strong>result:</strong>
Lorem ipsum dolor sit amet
Loremipsumdolorsitamet
Lorem ipsum dolor sit amet
Loremipsumdolorsitamet
Loremametipsumametdolorametsit

NOTE: The last call in the examples, if you pass in multiple strings instead of a string array, and there are more than two strings passed in, it treats the final string as the separator/delimiator. This means that if you tried {{Helpers.String.Join "Lorem" "ipsum" "dolor" "sit" "amet"}} and wanted to get back Loremipsumdolorsitamet, then you would actually need to add one more string to your list; ex: {{Helpers.String.Join "Lorem" "ipsum" "dolor" "sit" "amet" ""}}


Helpers.String.Lowercase

SummaryConvert string to lowercase
ReturnsLowercase string
Remarks
Parameters
strinput

Example

Context

{
    "value": "Some String WITH lots of UPPERCASE letters."
}

Usage

<strong>result:</strong>
{{Helpers.String.Lowercase value}}
{{Helpers.String.Lowercase "SOMETHING"}}

Returns

<strong>result:</strong>
some string with lots of uppercase letters.
something

Helpers.String.Occurrences

SummaryCount number of times a substring appears in base string
ReturnsNumber of times string occurred
Remarks
Parameters
strBase string
substringString to match
ignoreCaseWhether or not to ignore case, defaults to false

Example

Context

{
    "value": "Some string with multiple SubStrings.",
    "match": "string",
    "ignoreCase": true
}

Usage

<strong>result:</strong>
{{Helpers.String.Occurrences value match}}
{{Helpers.String.Occurrences value match ignoreCase}}
{{Helpers.String.Occurrences value "string"}}
{{Helpers.String.Occurrences value "string" true}}
{{Helpers.String.Occurrences "something somewhere" "some"}}

Returns

<strong>result:</strong>
1
2
1
2
2

Helpers.String.PadLeft

SummaryPad left input string with the padding character for a specified total length.
ReturnsLeft padded string
Remarks
Parameters
strBase string
totalWidthThe number of characters in the resulting string
paddingCharPadding character (not more than 1)

Example

Context

{
    "value": "pad-me"
}

Usage

<strong>result:</strong>
1. {{Helpers.String.PadLeft value 10 "0"}}
2. {{Helpers.String.PadLeft value "10" "0"}}
3. {{Helpers.String.PadLeft "custom-string" 15 "0"}}
4. {{Helpers.String.PadLeft value 15 "more-than-1-chars"}}
5. {{Helpers.String.PadLeft "custom-string" 15 "more-than-1-chars"}}

Returns

<strong>result:</strong>
1. 0000pad-me
2. 0000pad-me
3. 000custom-string
4. pad-me
5. custom-string


Helpers.String.PadRight

SummaryPad right input string with the padding character for a specified total length.
ReturnsRight padded string
Remarks
Parameters
strBase string
totalWidthThe number of characters in the resulting string
paddingCharPadding character (not more than 1)

Example

Context

{
    "value": "pad-me"
}

Usage

<strong>result:</strong>
1. {{Helpers.String.PadRight value 10 "0"}}
2. {{Helpers.String.PadRight value "10" "0"}}
3. {{Helpers.String.PadRight "custom-string" 15 "0"}}
4. {{Helpers.String.PadRight value 15 "more-than-1-chars"}}
5. {{Helpers.String.PadRight "custom-string" 15 "more-than-1-chars"}}

Returns

<strong>result:</strong>
1. pad-me0000
2. pad-me0000
3. custom-string000
4. pad-me
5. custom-string


Helpers.String.Prepend

SummaryPrepend one string to another
ReturnsPrepend string
Remarks
Parameters
strBase string
prefixString to prepend

Example

Context

{
    "a": "Lorem ipsum dolor sit amet",
    "b": ", consectetur adipiscing elit. Vivamus lacinia urna lectus."
}

Usage

<strong>result:</strong>
{{Helpers.String.Prepend b a}}
{{Helpers.String.Prepend a "something or "}}
{{Helpers.String.Prepend "another" "something or "}}

Returns

<strong>result:</strong>
Lorem ipsum dolor sit amet, consectetur adipiscing elit. Vivamus lacinia urna lectus.
something or Lorem ipsum dolor sit amet
something or another

Helpers.String.Replace

SummaryReplace matching substrings within a string with something else.
ReturnsReplaced string
RemarksNot case-insensitive
Parameters
strBase string
aString to match
bReplacement

Example

Context

{
    "value": "Some string with multiple Substrings.",
    "match": "string",
    "replacement": "value"
}

Usage

<strong>result:</strong>
{{Helpers.String.Replace value match replacement}}
{{Helpers.String.Replace value match "test"}}
{{Helpers.String.Replace value "string" "test"}}
{{Helpers.String.Replace value "string" replacement}}
{{Helpers.String.Replace "something somewhere" "some" "test"}}

Returns

<strong>result:</strong>
Some value with multiple Subvalues.
Some test with multiple Subtests.
Some test with multiple Subtests.
Some value with multiple Subvalues.
testthing testwhere

Helpers.String.Reverse

SummaryReverse a string
ReturnsReversed string
Remarks
Parameters
strInput

Example

Context

{
    "value": "Some String WITH lots of UPPERCASE letters."
}

Usage

<strong>result:</strong>
{{Helpers.String.Reverse value}}
{{Helpers.String.Reverse "SOMETHING"}}

Returns

<strong>result:</strong>
.srettel ESACREPPU fo stol HTIW gnirtS emoS
GNIHTEMOS

Helpers.String.Titlecase

SummaryConvert string to titlecase
ReturnsTitlecase string
Remarks
Parameters
strinput

Example

Context

{
    "value": "Some String WITH lots of UPPERCASE letters."
}

Usage

<strong>result:</strong>
{{Helpers.String.Titlecase value}}
{{Helpers.String.Titlecase "SOMETHING"}}

Returns

<strong>result:</strong>
Some String With Lots Of Uppercase Letters.
Something

Helpers.String.Trim

SummaryTrim whitespace from left and right side of string
ReturnsTrimmed string
Remarks
Parameters
strBase string

Example

Context

{
    "value": "      Some String WITH lots of UPPERCASE letters.      "
}

Usage

<strong>result:</strong>
{{Helpers.String.Trim value}}
{{Helpers.String.Trim "      SOMETHING      "}}

Returns

<strong>result:</strong>
Some String WITH lots of UPPERCASE letters.
SOMETHING

Helpers.String.TrimLeft

SummaryTrim whitespace from left side of string
ReturnsTrimmed string
Remarks
Parameters
strBase string

Example

Context

{
    "value": "      Some String WITH lots of UPPERCASE letters.      "
}

Usage

<strong>result:</strong>
{{Helpers.String.TrimLeft value}}
{{Helpers.String.TrimLeft "      SOMETHING      "}}

Returns

<strong>result:</strong>
Some String WITH lots of UPPERCASE letters.      
SOMETHING      

Helpers.String.TrimRight

SummaryTrim whitespace from right side of string
ReturnsTrimmed string
Remarks
Parameters
strBase string

Example

Context

{
    "value": "      Some String WITH lots of UPPERCASE letters.      "
}

Usage

<strong>result:</strong>
{{Helpers.String.TrimRight value}}
{{Helpers.String.TrimRight "      SOMETHING      "}}

Returns

<strong>result:</strong>
      Some String WITH lots of UPPERCASE letters.
      SOMETHING

Helpers.String.Truncate

SummaryTruncate a long string and append a suffix(if set)
ReturnsTruncated string
Remarks
Parameters
strString to trucate
limitMax number of characters in final string(excluding suffix)
suffixSuffix to append if string gets trucated

Example

Context

{
    "value": "Lorem ipsum dolor sit amet, consectetur adipiscing elit. Vivamus lacinia urna lectus."
}

Usage

<strong>result:</strong>
{{Helpers.String.Truncate value 10}}
{{Helpers.String.Truncate value 10 "..."}}
{{Helpers.String.Truncate "something" 5}}
{{Helpers.String.Truncate "something" 5 "test"}}

Returns

<strong>result:</strong>
Lorem ipsu
Lorem ipsu...
somet
somettest

Helpers.String.TruncateWords

SummaryTruncate a long string and base truncation on the number of words instead of characters and append a suffix(if set)
ReturnsTruncated string
Remarks
Parameters
strString to trucate
limitNumber of words in final string(excluding suffix)
suffixSuffix to append if string gets trucated

Example

Context

{
    "value": "Lorem ipsum dolor sit amet, consectetur adipiscing elit. Vivamus lacinia urna lectus."
}

Usage

<strong>result:</strong>
{{Helpers.String.TruncateWords value 10}}
{{Helpers.String.TruncateWords value 10 "..."}}
{{Helpers.String.TruncateWords "something wicked this way comes" 2}}
{{Helpers.String.TruncateWords "something wicked this way comes" 2 "test"}}

Returns

<strong>result:</strong>
Lorem ipsum dolor sit amet, consectetur adipiscing elit. Vivamus lacinia
Lorem ipsum dolor sit amet, consectetur adipiscing elit. Vivamus lacinia...
something wicked
something wickedtest

Helpers.String.Uppercase

SummaryConvert string to uppercase
ReturnsUppercase string
Remarks
Parameters
strinput

Example

Context

{
    "value": "Some String WITH lots of lowercase letters."
}

Usage

<strong>result:</strong>
{{Helpers.String.Lowercase value}}
{{Helpers.String.Lowercase "something"}}

Returns

<strong>result:</strong>
SOME STRING WITH LOTS OF LOWERCASE LETTERS.
SOMETHING