Skip to content

Latest commit

 

History

History
391 lines (232 loc) · 7.16 KB

File metadata and controls

391 lines (232 loc) · 7.16 KB
description String case conversion helpers.

stringcase

String case conversion helpers.

Usage

stringcase = require "mods.stringcase"

print(stringcase.snake("FooBar")) --> "foo_bar"

Functions

Basic:

Function Description
lower(s) Convert string to all lowercase.
upper(s) Convert string to all uppercase.

Word Case:

Function Description
snake(s) Convert string to snake_case.
camel(s) Convert string to camelCase.
replace(s, sep?) Normalize to snake_case, then replace underscores with a separator.
acronym(s) Get acronym of words in string (first letters only).
title(s) Convert string to Title Case (first letter of each word capitalized).
constant(s) Convert string to CONSTANT_CASE (uppercase snake_case).
pascal(s) Convert string to PascalCase.
kebab(s) Convert string to kebab-case.
dot(s) Convert string to dot.case.
space(s) Convert string to space case (spaces between words).
path(s) Convert string to path/case (slashes between words).

Letter Case:

Function Description
swap(s) Swap case of each letter.
capital(s) Capitalize the first letter and lowercase the rest.
sentence(s) Convert string to sentence case (first letter uppercase, rest unchanged).

Basic

lower(s)

Convert string to all lowercase.

Parameters:

  • s (string): Input string.

Return:

  • s (string): Lowercased string.

Example:

lower("foo_bar-baz") --> "foo_bar-baz"
lower("FooBar baz")  --> "foobar baz"

upper(s)

Convert string to all uppercase.

Parameters:

  • s (string): Input string.

Return:

  • s (string): Uppercased string.

Example:

upper("foo_bar-baz") --> "FOO_BAR-BAZ"
upper("FooBar baz")  --> "FOOBAR BAZ"

Word Case

snake(s)

Convert string to snake_case.

Parameters:

  • s (string): Input string.

Return:

  • s (string): Snake-cased string.

Example:

snake("foo_bar-baz") --> "foo_bar_baz"
snake("FooBar baz")  --> "foo_bar_baz"

camel(s)

Convert string to camelCase.

Parameters:

  • s (string): Input string.

Return:

  • s (string): Camel-cased string.

Example:

camel("foo_bar-baz") --> "fooBarBaz"
camel("FooBar baz")  --> "fooBarBaz"

replace(s, sep?)

Normalize to snake_case, then replace underscores with a separator.

Parameters:

  • s (string): Input string.
  • sep? (string): Optional separator value (defaults to "").

Return:

  • s (string): String with underscores replaced by sep.

Example:

replace("foo_bar-baz", "-") --> "foo-bar-baz"
replace("FooBar baz", "-")  --> "foo-bar-baz"

acronym(s)

Get acronym of words in string (first letters only).

Parameters:

  • s (string): Input string.

Return:

  • s (string): Acronym string.

Example:

acronym("foo_bar-baz") --> "FBB"
acronym("FooBar baz")  --> "FBB"

title(s)

Convert string to Title Case (first letter of each word capitalized).

Parameters:

  • s (string): Input string.

Return:

  • s (string): Title-cased string.

Example:

title("foo_bar-baz") --> "Foo Bar Baz"
title("FooBar baz")  --> "Foo Bar Baz"

constant(s)

Convert string to CONSTANT_CASE (uppercase snake_case).

Parameters:

  • s (string): Input string.

Return:

  • s (string): Constant-cased string.

Example:

constant("foo_bar-baz") --> "FOO_BAR_BAZ"
constant("FooBar baz")  --> "FOO_BAR_BAZ"

pascal(s)

Convert string to PascalCase.

Parameters:

  • s (string): Input string.

Return:

  • s (string): Pascal-cased string.

Example:

pascal("foo_bar-baz") --> "FooBarBaz"
pascal("FooBar baz")  --> "FooBarBaz"

kebab(s)

Convert string to kebab-case.

Parameters:

  • s (string): Input string.

Return:

  • s (string): Kebab-cased string.

Example:

kebab("foo_bar-baz") --> "foo-bar-baz"
kebab("FooBar baz")  --> "foo-bar-baz"

dot(s)

Convert string to dot.case.

Parameters:

  • s (string): Input string.

Return:

  • s (string): Dot-cased string.

Example:

dot("foo_bar-baz") --> "foo.bar.baz"
dot("FooBar baz")  --> "foo.bar.baz"

space(s)

Convert string to space case (spaces between words).

Parameters:

  • s (string): Input string.

Return:

  • s (string): Space-cased string.

Example:

space("foo_bar-baz") --> "foo bar baz"
space("FooBar baz")  --> "foo bar baz"

path(s)

Convert string to path/case (slashes between words).

Parameters:

  • s (string): Input string.

Return:

  • s (string): Path-cased string.

Example:

path("foo_bar-baz") --> "foo/bar/baz"
path("FooBar baz")  --> "foo/bar/baz"

Letter Case

swap(s)

Swap case of each letter.

Parameters:

  • s (string): Input string.

Return:

  • s (string): Swap-cased string.

Example:

swap("foo_bar-baz") --> "FOO_BAR-BAZ"
swap("FooBar baz")  --> "fOObAR BAZ"

capital(s)

Capitalize the first letter and lowercase the rest.

Parameters:

  • s (string): Input string.

Return:

  • s (string): Capitalized string.

Example:

capital("foo_bar-baz") --> "Foo_bar-baz"
capital("FooBar baz")  --> "Foobar baz"

sentence(s)

Convert string to sentence case (first letter uppercase, rest unchanged).

Parameters:

  • s (string): Input string.

Return:

  • s (string): Sentence-cased string.

Example:

sentence("foo_bar-baz") --> "Foo_bar-baz"
sentence("FooBar baz")  --> "FooBar baz"