25개 이상의 토픽을 선택하실 수 없습니다. Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
Ian Coleman 77ddaa2c2d Migrate from travis-ci.org to travis-ci.com 3 년 전
.travis.yml Remove go versions in CI with no strings.Builder 3 년 전
LICENSE Added license notices of Ian Coleman to each file 5 년 전
README.md Migrate from travis-ci.org to travis-ci.com 3 년 전
acronyms.go Provides ability to configure custom acronyms 3 년 전
camel.go Fix ToLowerCamel with leading space 3 년 전
camel_test.go Provides ability to configure custom acronyms 3 년 전
doc.go refactored doc to please golint 5 년 전
snake.go Reintroduce strings.TrimCase in snake 3 년 전
snake_test.go Fix ToLowerCamel with leading space 3 년 전

README.md

strcase

Godoc Reference Build Status Coverage Go Report Card

strcase is a go package for converting string case to various cases (e.g. snake case or camel case) to see the full conversion table below.

Example

s := "AnyKind of_string"
Function Result
ToSnake(s) any_kind_of_string
ToSnakeWithIgnore(s, '.') any_kind.of_string
ToScreamingSnake(s) ANY_KIND_OF_STRING
ToKebab(s) any-kind-of-string
ToScreamingKebab(s) ANY-KIND-OF-STRING
ToDelimited(s, '.') any.kind.of.string
ToScreamingDelimited(s, '.', '', true) ANY.KIND.OF.STRING
ToScreamingDelimited(s, '.', ' ', true) ANY.KIND OF.STRING
ToCamel(s) AnyKindOfString
ToLowerCamel(s) anyKindOfString

Install

go get -u github.com/iancoleman/strcase

Custom Acronyms for ToCamel && ToLowerCamel

Often times text can contain specific acronyms which you need to be handled a certain way. Out of the box strcase treats the string “ID” as “Id” or “id” but there is no way to cater for every case in the wild.

To configure your custom acronym globally you can use the following before running any conversion

import (
    "github.com/iancoleman/strcase"
)

func init() {
    // results in "Api" using ToCamel("API")
    // results in "api" using ToLowerCamel("API")
    strcase.ConfigureAcronym("API", "api")
    
    // results in "PostgreSQL" using ToCamel("PostgreSQL")
    // results in "postgreSQL" using ToLowerCamel("PostgreSQL")
    strcase.ConfigureAcronym("PostgreSQL", "PostgreSQL")

}