我想使用一个正则表达式来匹配文本中一行的开头。由于某种原因,^
无法正常工作,请参见以下失败的测试:
func TestNewLine(t *testing.T) {
re := regexp.MustCompile("^bar")
match := re.FindString("foo\nbar\nbaz")
assert.Equal(t, "bar", match)
}
我想念什么?
最佳答案
您必须为正则表达式评估启用多行模式标志。试试这个:
func TestNewLine(t *testing.T) {
re := regexp.MustCompile("(?m)^(bar)")
match := re.FindString("foo\nbar\nbaz")
assert.Equal(t, "bar", match)
}