diff --git a/fleprocess/load_file.go b/fleprocess/load_file.go index 2fd9bac..a1094c3 100644 --- a/fleprocess/load_file.go +++ b/fleprocess/load_file.go @@ -53,6 +53,7 @@ func LoadFile(inputFilename string, isInterpolateTime bool) (filleFullLog []LogL isInferTimeFatalError := false regexpLineComment := regexp.MustCompile(`^[[:blank:]]*#`) + regexpInLineComment := regexp.MustCompile(`.*#.*`) regexpOnlySpaces := regexp.MustCompile(`^\s+$`) regexpSingleMultiLineComment := regexp.MustCompile(`^[[:blank:]]*{.+}$`) regexpStartMultiLineComment := regexp.MustCompile(`^[[:blank:]]*{`) @@ -104,6 +105,10 @@ func LoadFile(inputFilename string, isInterpolateTime bool) (filleFullLog []LogL if (len(eachline) == 0) || (regexpOnlySpaces.MatchString(eachline)) { continue } + // a comment starts somewhere on the line, remove the comment + if regexpInLineComment.MatchString(eachline) { + eachline = strings.Split(eachline, "#")[0] + } // Process multi-line comments if regexpStartMultiLineComment.MatchString(eachline) { diff --git a/fleprocess/load_file_test.go b/fleprocess/load_file_test.go index 29e984e..d6501ca 100644 --- a/fleprocess/load_file_test.go +++ b/fleprocess/load_file_test.go @@ -49,6 +49,7 @@ func TestLoadFile_happyCase(t *testing.T) { dataArray = append(dataArray, "40m cw 0950 ik5zve/5 9 5") dataArray = append(dataArray, "on6zq") dataArray = append(dataArray, "0954 on4do") + dataArray = append(dataArray, "0955 k0emt # on line comment") temporaryDataFileName := createTestFile(dataArray) @@ -115,6 +116,14 @@ func TestLoadFile_happyCase(t *testing.T) { if loadedLogFile[2].Time != expectedValue { t.Errorf("Not the expected Time[2] value: %s (expecting %s)", loadedLogFile[2].Time, expectedValue) } + expectedValue = "K0EMT" + if loadedLogFile[3].Call != expectedValue { + t.Errorf("Not the expected Call[3] value: %s (expecting %s)", loadedLogFile[3].Call, expectedValue) + } + expectedValue = "0955" + if loadedLogFile[3].Time != expectedValue { + t.Errorf("Not the expected Time[3] value: %s (expecting %s)", loadedLogFile[3].Time, expectedValue) + } //Clean Up os.Remove(temporaryDataFileName) }