Позиция совпадения в Go
Команда с индексами возвращает пару чисел: начало и конец совпадения в байтах строки. Пустой результат означает отсутствие совпадения.
Узнаем позицию цифр:
package main
import (
"fmt"
"regexp"
)
func main() {
re := regexp.MustCompile(`\d+`)
txt := "id:42 end"
loc := re.FindStringIndex(txt)
fmt.Println(loc)
}
Дана строка:
txt := "abc def"
Найдите индексы первого слова "def".
Дана строка:
txt := "zzz"
Скажите, что вернет поиск индексов, если образец не подошел.
Дана строка:
txt := "a1b2"
Выведите индексы первой цифры.