...
1
2
3
4 package utils
5
6
7 func StringSliceIndex(slice []string, str string) int {
8 for i := range slice {
9 if slice[i] == str {
10 return i
11 }
12 }
13 return -1
14 }
15
16
17 func StringSliceContains(slice []string, str string) bool {
18 for _, s := range slice {
19 if s == str {
20 return true
21 }
22 }
23 return false
24 }
25
26
27
28
29
30 func SameEndingSubSlice(shortest, longest []string) bool {
31 if len(shortest) > len(longest) {
32 longest, shortest = shortest, longest
33 }
34 diff := len(longest) - len(shortest)
35 if len(shortest) == 0 {
36 return diff == 0
37 }
38 for i := len(shortest) - 1; i >= 0; i-- {
39 if longest[i+diff] != shortest[i] {
40 return false
41 }
42 }
43 return true
44 }
45
View as plain text