aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorapocelipes <seve3r@outlook.com>2024-05-03 08:36:03 +0000
committerGopher Robot <gobot@golang.org>2024-05-03 16:48:16 +0000
commit10c035acd669271dc37b9e5354b30ec939ff7c84 (patch)
treec4565bf1105c647fd54e1d9a6e5236d2c28e4a8f
parent0bc093a1aae4fb5e101fae815fe6673e9180923e (diff)
downloadgo-10c035acd669271dc37b9e5354b30ec939ff7c84.tar.gz
go-10c035acd669271dc37b9e5354b30ec939ff7c84.zip
strings: move TrimPrefix and TrimSuffix to stringslite
To help packages use these functions like "os" which using the copied function "stringsTrimSuffix". Change-Id: I223028ed264c7b7e95534b4883223af0988cda68 GitHub-Last-Rev: 2fd8fbf5286e5a4abdb03704d69f02e32d3f1a6b GitHub-Pull-Request: golang/go#67151 Reviewed-on: https://go-review.googlesource.com/c/go/+/583075 Reviewed-by: David Chase <drchase@google.com> LUCI-TryBot-Result: Go LUCI <golang-scoped@luci-project-accounts.iam.gserviceaccount.com> Reviewed-by: qiu laidongfeng2 <2645477756@qq.com> Reviewed-by: Ian Lance Taylor <iant@google.com> Auto-Submit: Ian Lance Taylor <iant@google.com>
-rw-r--r--src/internal/stringslite/strings.go14
-rw-r--r--src/strings/strings.go10
2 files changed, 16 insertions, 8 deletions
diff --git a/src/internal/stringslite/strings.go b/src/internal/stringslite/strings.go
index ce8a913297..c0c6e2dce5 100644
--- a/src/internal/stringslite/strings.go
+++ b/src/internal/stringslite/strings.go
@@ -122,3 +122,17 @@ func CutSuffix(s, suffix string) (before string, found bool) {
}
return s[:len(s)-len(suffix)], true
}
+
+func TrimPrefix(s, prefix string) string {
+ if HasPrefix(s, prefix) {
+ return s[len(prefix):]
+ }
+ return s
+}
+
+func TrimSuffix(s, suffix string) string {
+ if HasSuffix(s, suffix) {
+ return s[:len(s)-len(suffix)]
+ }
+ return s
+}
diff --git a/src/strings/strings.go b/src/strings/strings.go
index d8cc09a24e..95180828f6 100644
--- a/src/strings/strings.go
+++ b/src/strings/strings.go
@@ -1075,19 +1075,13 @@ func TrimSpace(s string) string {
// TrimPrefix returns s without the provided leading prefix string.
// If s doesn't start with prefix, s is returned unchanged.
func TrimPrefix(s, prefix string) string {
- if HasPrefix(s, prefix) {
- return s[len(prefix):]
- }
- return s
+ return stringslite.TrimPrefix(s, prefix)
}
// TrimSuffix returns s without the provided trailing suffix string.
// If s doesn't end with suffix, s is returned unchanged.
func TrimSuffix(s, suffix string) string {
- if HasSuffix(s, suffix) {
- return s[:len(s)-len(suffix)]
- }
- return s
+ return stringslite.TrimSuffix(s, suffix)
}
// Replace returns a copy of the string s with the first n