큰 문자열에서 부분 문자열의 모든 출현 인덱스를 찾으려면 어떻게해야합니까? (기본적으로 "indexOf"기능의 확장). 어떤 아이디어?Groovy : 부분 문자열의 색인?
현재 상황 :
def text = " --- --- bcd -- bcd ---"
def sub = "bcd"
text.indexOf(sub)
// = 9
내가 좋아하는 뭔가를 원하는 :
def text = " --- --- bcd -- bcd ---"
def sub = "bcd"
text.indexesOf(sub)
// = [9,15]
그런 기능이 있습니까? 그렇지 않으면 어떻게 구현해야합니까? 이 이 중복 인스턴스를 찾을 것
String.metaClass.indexesOf = { arg ->
def result = []
int index = delegate.indexOf(arg)
while (index != -1) {
result.add(index);
index = delegate.indexOf(arg, index+1);
}
return result;
}
주 (즉 "fooo".indexesOf("oo")
[1, 2]
를 반환합니다) :
질문은 무엇입니까 무료로 당신이 얻을 것을 현재 그루비에 존재하지입니까? "어떻게 구현합니까?" 또는 "그런 것이 있습니까?" 또는 "...?" –
질문에 감사를 표합니다. – Yossale