| 304 | var targetWordRegex *regexp.Regexp |
| 305 | |
| 306 | func makeInitialismsMap(additionalInitialisms []string) map[string]string { |
| 307 | l := append(initialismsList, additionalInitialisms...) |
| 308 | |
| 309 | m := make(map[string]string, len(l)) |
| 310 | for i := range l { |
| 311 | m[strings.ToLower(l[i])] = l[i] |
| 312 | } |
| 313 | |
| 314 | // Create a regex to match the initialisms |
| 315 | targetWordRegex = regexp.MustCompile(`(?i)(` + strings.Join(l, "|") + `)`) |
| 316 | |
| 317 | return m |
| 318 | } |
| 319 | |
| 320 | func ToCamelCaseWithInitialism(str string) string { |
| 321 | return replaceInitialism(ToCamelCase(str)) |