mirror of https://github.com/databricks/cli.git
21 lines
482 B
Go
21 lines
482 B
Go
|
package textutil
|
||
|
|
||
|
import (
|
||
|
"strings"
|
||
|
"unicode"
|
||
|
)
|
||
|
|
||
|
// We leave the full range of unicode letters in tact, but remove all "special" characters,
|
||
|
// including spaces and dots, which are not supported in e.g. experiment names or YAML keys.
|
||
|
func NormalizeString(name string) string {
|
||
|
name = strings.ToLower(name)
|
||
|
return strings.Map(replaceNonAlphanumeric, name)
|
||
|
}
|
||
|
|
||
|
func replaceNonAlphanumeric(r rune) rune {
|
||
|
if unicode.IsLetter(r) || unicode.IsDigit(r) {
|
||
|
return r
|
||
|
}
|
||
|
return '_'
|
||
|
}
|