Replace regexp based Chomp with builtin TrimRight

This commit is contained in:
bep 2015-01-20 12:41:08 +01:00
parent 99aee30410
commit 077d726b51
2 changed files with 41 additions and 44 deletions

View file

@ -29,7 +29,6 @@ import (
"os" "os"
"path/filepath" "path/filepath"
"reflect" "reflect"
"regexp"
"sort" "sort"
"strconv" "strconv"
"strings" "strings"
@ -38,7 +37,6 @@ import (
var localTemplates *template.Template var localTemplates *template.Template
var tmpl Template var tmpl Template
var funcMap template.FuncMap var funcMap template.FuncMap
var chompRegexp *regexp.Regexp
type Template interface { type Template interface {
ExecuteTemplate(wr io.Writer, name string, data interface{}) error ExecuteTemplate(wr io.Writer, name string, data interface{}) error
@ -877,7 +875,7 @@ func Chomp(text interface{}) (string, error) {
return "", err return "", err
} }
return chompRegexp.ReplaceAllString(s, ""), nil return strings.TrimRight(s, "\r\n"), nil
} }
// Trim leading/trailing characters defined by b from a // Trim leading/trailing characters defined by b from a
@ -1284,5 +1282,4 @@ func init() {
"trim": Trim, "trim": Trim,
} }
chompRegexp = regexp.MustCompile("[\r\n]+$")
} }

View file

@ -835,9 +835,9 @@ func TestMarkdownify(t *testing.T) {
func TestChomp(t *testing.T) { func TestChomp(t *testing.T) {
base := "\n This is\na story " base := "\n This is\na story "
for i, item := range []string{ for i, item := range []string{
"\n", "\n", "\n\n",
"\r", "\r", "\r\r",
"\r\n", "\r\n", "\r\n\r\n",
} { } {
chomped, _ := Chomp(base + item) chomped, _ := Chomp(base + item)