package task import ( "fmt" "regexp" "strconv" ) func extractFloorNumber(input string) (int, error) { // 定义匹配楼层数字的正则表达式 re := regexp.MustCompile(`-?\d+`) // 查找第一个匹配的楼层数字 matches := re.FindStringSubmatch(input) // 如果找到匹配的楼层数字 if len(matches) > 0 { // 将匹配的楼层数字转换为整数 floorNumber, err := strconv.Atoi(matches[0]) if err != nil { return 0, err } return floorNumber, nil } // 如果未找到匹配的楼层数字,则返回错误 return 0, fmt.Errorf("No floor number found in input: %s", input) }