仅匹配Ruby regexp中的行首

cab*_*ird 7 ruby regex

我有一个字符串变量,其中有多个换行符,我想测试字符串的开头是否与正则表达式匹配.但是,当我使用该^字符时,它会匹配从每个换行符开始的文本.

我希望这匹配:

"foo\nbar" =~ /^foo/
Run Code Online (Sandbox Code Playgroud)

我希望这不匹配

"bar\nfoo" =~ /^foo/
Run Code Online (Sandbox Code Playgroud)

我找不到一个修饰符,使^(或任何其他)字符只匹配字符串的开头.任何帮助非常感谢.

Bar*_*ers 12

在Ruby中,插入符号和美元总是在换行符之前和之后匹配.Ruby没有修饰符来改变它.使用\ A和\ Z匹配字符串的开头或结尾.

见:http://www.regular-expressions.info/ruby.html