Created
February 3, 2020 20:56
-
-
Save topherPedersen/a6d1f4f9a9e95852a3d1907b4e505625 to your computer and use it in GitHub Desktop.
How to Strip Newline Characters from a String in Golang
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
package main | |
import ( | |
"fmt" | |
"strings" | |
) | |
func main() { | |
var string_a string = "My super \nsweet \nstring has \nmany newline\n characters" | |
fmt.Println(string_a) | |
var string_b string = string_a | |
string_b = strings.Replace(string_b, "\n", "", -1) | |
fmt.Println(string_b) | |
} |
In my case tough, can't seem to trim the newline at the end of command output from cat on a file.
TrimSuffix
requires all characters in the correct order to be present.
if the file only has \n
, then \r\n
wont be trimmed because those 2 characters dont exist
files will contain only \n
if they're created on linux or macos or wsl
they will have both \r\n
characters if they're created on windows
what you want is strings.TrimRight(string_b, "\r\n")
, it removes any individual character from the end of the string.
if there is just \n
, it removes it, and if there's \r\n
it removes both
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
There's also
strings.TrimSuffix(string_b, "\r\n")
.In my case tough, can't seem to trim the newline at the end of command output from
cat
on a file.