1234567891011121314151617181920212223242526272829 |
- package sanitized_anchor_name
- import "unicode"
- func Create(text string) string {
- var anchorName []rune
- var futureDash = false
- for _, r := range []rune(text) {
- switch {
- case unicode.IsLetter(r) || unicode.IsNumber(r):
- if futureDash && len(anchorName) > 0 {
- anchorName = append(anchorName, '-')
- }
- futureDash = false
- anchorName = append(anchorName, unicode.ToLower(r))
- default:
- futureDash = true
- }
- }
- return string(anchorName)
- }
|