Renamed match function to 'findAllMatches', to better represent what it does
This commit is contained in:
2
main.go
2
main.go
@@ -178,7 +178,7 @@ func main() {
|
||||
re_postfix := shuntingYard(re)
|
||||
// fmt.Println(re_postfix)
|
||||
startState := thompson(re_postfix)
|
||||
matchIndices := match(startState, os.Args[2])
|
||||
matchIndices := findAllMatches(startState, os.Args[2])
|
||||
inColor := false
|
||||
if len(matchIndices) > 0 {
|
||||
for i, c := range os.Args[2] {
|
||||
|
10
matching.go
10
matching.go
@@ -23,12 +23,12 @@ func takeZeroState(states []*State) (rtv []*State, isZero bool) {
|
||||
return rtv, false
|
||||
}
|
||||
|
||||
// match tries to match the regex represented by given start-state, with
|
||||
// findAllMatches tries to findAllMatches the regex represented by given start-state, with
|
||||
// the given string
|
||||
func match(start *State, str string) (indices []matchIndex) {
|
||||
return matchHelper(start, str, make([]matchIndex, 0), 0)
|
||||
func findAllMatches(start *State, str string) (indices []matchIndex) {
|
||||
return findAllMatchesHelper(start, str, make([]matchIndex, 0), 0)
|
||||
}
|
||||
func matchHelper(start *State, str string, indices []matchIndex, offset int) []matchIndex {
|
||||
func findAllMatchesHelper(start *State, str string, indices []matchIndex, offset int) []matchIndex {
|
||||
// 'Base case' - exit if string is empty
|
||||
if len(str) == 0 {
|
||||
return indices
|
||||
@@ -86,7 +86,7 @@ func matchHelper(start *State, str string, indices []matchIndex, offset int) []m
|
||||
if i == startingFrom {
|
||||
i++
|
||||
}
|
||||
return matchHelper(start, str[i:], indices, offset+i)
|
||||
return findAllMatchesHelper(start, str[i:], indices, offset+i)
|
||||
}
|
||||
currentStates = make([]*State, len(tempStates))
|
||||
copy(currentStates, tempStates)
|
||||
|
Reference in New Issue
Block a user