forked from sneak/util
CollapseWhitespace turns every run of whitespace into a single space and trims the ends, so a block of text becomes one tidy line. Comes with a doc comment and table-driven tests. (closes #7) Model: opus-5
13 lines
497 B
Go
13 lines
497 B
Go
package util
|
|
|
|
import "strings"
|
|
|
|
// CollapseWhitespace replaces every run of whitespace in s with a single space
|
|
// and removes any whitespace at the start and end. Tabs, newlines and spaces
|
|
// outside ASCII such as the non-breaking space all count as whitespace, so a
|
|
// block of text comes back as one line with single spaces between the words.
|
|
// A string that is nothing but whitespace comes back empty.
|
|
func CollapseWhitespace(s string) string {
|
|
return strings.Join(strings.Fields(s), " ")
|
|
}
|