Golang : Use regular expression to get all upper case or lower case characters example
This is an add-on for the previous tutorial on how to get all upper case or lower case characters example. In this example, we will explore the a different version that use a regular expression to achieve the same objective.
Here you go!
package main
import (
"fmt"
"regexp"
)
func removeDelimAndLowerCase(str string) string {
regExp := regexp.MustCompile(`[^[:upper:]]`)
return regExp.ReplaceAllString(str, "")
}
func removeDelimAndUpperCase(str string) string {
regExp := regexp.MustCompile(`[^[:lower:]]`)
return regExp.ReplaceAllString(str, "")
}
func main() {
str := "This a string with some UpperCase Characters."
allUpper := removeDelimAndLowerCase(str)
fmt.Println("All uppercase : ", allUpper)
allLower := removeDelimAndUpperCase(str)
fmt.Println("All lowercase : ", allLower)
}
Output:
All uppercase : TUCC
All lowercase : hisastringwithsomepperaseharacters
NOTES:
It is definitely faster to use regular expression to parse string, but sometimes it can be hard to read for other programmers or your teammates. To keep things simple, try to use non-regular expression solution if possible. Ability is read source code is more important that ability to write codes.
Happy coding!
By Adam Ng
IF you gain some knowledge or the information here solved your programming problem. Please consider donating to the less fortunate or some charities that you like. Apart from donation, planting trees, volunteering or reducing your carbon footprint will be great too.
Advertisement
Tutorials
+8.7k Golang : Convert(cast) []byte to io.Reader type
+14.8k Golang : Reset buffer example
+11.7k Golang : Fuzzy string search or approximate string matching example
+30.3k Golang : How to declare kilobyte, megabyte, gigabyte, terabyte and so on?
+5.4k Swift : Convert string array to array example
+14.3k Elastic Search : Mapping date format and sort by date
+5.6k Golang : If else example and common mistake
+4.8k Chrome : How to block socketloop.com links in Google SERP?
+11.1k Nginx : TLS 1.2 support
+7.9k Golang : Getting Echo framework StartAutoTLS to work
+9.5k Golang : Generate EAN barcode
+9.5k Golang : Scramble and unscramble text message by randomly replacing words