strung.ahk - A utility library for working with strings in AutoHotkey 2

Post your working scripts, libraries and tools.
joshuacc
Posts: 3
Joined: 28 Oct 2022, 20:50
Contact:

strung.ahk - A utility library for working with strings in AutoHotkey 2

Post by joshuacc » 30 Nov 2022, 16:51

Hi folks,

I've just published my AHK 2 library strung.ahk on GitHub: https://github.com/joshuacc/strung.ahk

It features 42 utility methods (See list below) as well as the ability to use either a static or chaining API. For full usage details as well as examples, see the GitHub link above.

Static methods example:

Code: Select all

str := Strung.truncate("abcdefg", 3)
str := Strung.toUpperCase(str)
str := Strung.surround(str, "~")
; str == "~ABC~"
Chaining example:

Code: Select all

str := Strung("abcdefg")
  .truncate(3)
  .toUpperCase()
  .surround("~")
  .value()
; str == "~ABC~"
Method list:
  • Strung.at(str, index)
  • Strung.concat(str, others*)
  • Strung.endsWith(str, suffix)
  • Strung.contains(str, search)
  • Strung.includes(str, search)
  • Strung.indexOf(str, search, fromIndex := 1)
  • Strung.lastIndexOf(str, search)
  • Strung.padEnd(str, targetLength, padString := " ")
  • Strung.rightPad(str, targetLength, padString := " ")
  • Strung.padStart(str, targetLength, padString := " ")
  • Strung.leftPad(str, targetLength, padString := " ")
  • Strung.repeat(str, count)
  • Strung.replace(str, search, replacement)
  • Strung.replaceAll(str, search, replacement)
  • Strung.search(str, regex)
  • Strung.slice(str, start, end := StrLen(str))
  • Strung.split(str, separator, limit := 0, mode := "string")
  • Strung.startsWith(str, prefix)
  • Strung.toUpperCase(str)
  • Strung.trim(str)
  • Strung.chop(str, length)
  • Strung.consolidateSpaces(str)
  • Strung.toArray(str)
  • Strung.chars(str)
  • Strung.swapCase(str)
  • Strung.count(str, search)
  • Strung.length(str)
  • Strung.insert(str, index, insert)
  • Strung.isBlank(str)
  • Strung.join(separator, strs*)
  • Strung.linesToArray(str)
  • Strung.lineCount(str)
  • Strung.reverse(str)
  • Strung.titleCase(str)
  • Strung.truncate(str, length, truncateStr := "")
  • Strung.wordsToArray(str)
  • Strung.wordCount(str)
  • Strung.surround(str, surround)
  • Strung.quote(str, q := '"')
  • Strung.unquote(str, q := '"')
  • Strung.toBoolean(str)
  • Strung.map(str, mapper)

Return to “Scripts and Functions (v2)”