Index: src/pkg/bytes/bytes.go |
=================================================================== |
--- a/src/pkg/bytes/bytes.go |
+++ b/src/pkg/bytes/bytes.go |
@@ -212,26 +212,40 @@ |
return a[0 : na+1] |
} |
-// Split slices s into subslices separated by sep and returns a slice of |
+// SplitN slices s into subslices separated by sep and returns a slice of |
// the subslices between those separators. |
-// If sep is empty, Split splits after each UTF-8 sequence. |
+// If sep is empty, SplitN splits after each UTF-8 sequence. |
// The count determines the number of subslices to return: |
// n > 0: at most n subslices; the last subslice will be the unsplit remainder. |
// n == 0: the result is nil (zero subslices) |
// n < 0: all subslices |
-func Split(s, sep []byte, n int) [][]byte { return genSplit(s, sep, 0, n) } |
+func SplitN(s, sep []byte, n int) [][]byte { return genSplit(s, sep, 0, n) } |
-// SplitAfter slices s into subslices after each instance of sep and |
+// SplitAfterN slices s into subslices after each instance of sep and |
// returns a slice of those subslices. |
-// If sep is empty, Split splits after each UTF-8 sequence. |
+// If sep is empty, SplitAfterN splits after each UTF-8 sequence. |
// The count determines the number of subslices to return: |
// n > 0: at most n subslices; the last subslice will be the unsplit remainder. |
// n == 0: the result is nil (zero subslices) |
// n < 0: all subslices |
-func SplitAfter(s, sep []byte, n int) [][]byte { |
+func SplitAfterN(s, sep []byte, n int) [][]byte { |
return genSplit(s, sep, len(sep), n) |
} |
+// Split slices s into all subslices separated by sep and returns a slice of |
+// the subslices between those separators. |
+// If sep is empty, Split splits after each UTF-8 sequence. |
+// It is equivalent to SplitN with a count of -1. |
+func Split(s, sep []byte) [][]byte { return genSplit(s, sep, 0, -1) } |
+ |
+// SplitAfter slices s into all subslices after each instance of sep and |
+// returns a slice of those subslices. |
+// If sep is empty, SplitAfter splits after each UTF-8 sequence. |
+// It is equivalent to SplitAfterN with a count of -1. |
+func SplitAfter(s, sep []byte) [][]byte { |
+ return genSplit(s, sep, len(sep), -1) |
+} |
+ |
// Fields splits the array s around each instance of one or more consecutive white space |
// characters, returning a slice of subarrays of s or an empty list if s contains only white space. |
func Fields(s []byte) [][]byte { |