String First Words
This page was last reviewed on Sep 12, 2023.
Dot Net Perls
First words. A string has words. It contains a sentence, a paragraph. Words are separated with spaces. With a special func we can extract the first words in the sentence.
By counting spaces, we can estimate the number of words. This is not perfect. Extra logic to handle hyphens and punctuation might be needed.
Example func. The firstWords func receives to arguments: a string and a count. The count int is the number of words in our result.
Start We use a for-loop to count spaces. We decrement the count by 1 (meaning one less word is remaining to be counted).
Return We return a substring to the current index when the required number of spaces are found. We do not include the trailing space.
package main import "fmt" func firstWords(value string, count int) string { // Loop over all indexes in the string. for i := range value { // If we encounter a space, reduce the count. if value[i] == ' ' { count -= 1 // When no more words required, return a substring. if count == 0 { return value[0:i] } } } // Return the entire string. return value } func main() { value := "there are many reasons" // Test our first words method. result1 := firstWords(value, 2) fmt.Println("[" + result1 + "]") result2 := firstWords(value, 3) fmt.Println(result2) result3 := firstWords(value, 100) fmt.Println(result3) }
[there are] there are many there are many reasons
Entire string, notes. If you pass a large value to firstWords, like 100, the entire string is returned. The argument 0 may need to be special-cased depending on your requirements.
Substrings are complex. Each language has special syntax for them. In Go we use a slice of a string. We can extract parts of strings, like the first several words, with this syntax.
Dot Net Perls is a collection of tested code examples. Pages are continually updated to stay current, with code correctness a top priority.
Sam Allen is passionate about computer languages. In the past, his work has been recommended by Apple and Microsoft and he has studied computers at a selective university in the United States.
This page was last updated on Sep 12, 2023 (edit).
© 2007-2024 Sam Allen.