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), " ") }