У меня есть строковая переменная, которая имеет несколько новых строк в нем, и я хотел бы протестировать, если начало строки соответствует регулярному выражению. Однако, когда я использую ^
символ, это соответствует против текста, который начинается в каждой новой строке.
Я хочу, чтобы это соответствовало:
"foo\nbar" =~ /^foo/
и я хочу, чтобы это не соответствовало
"bar\nfoo" =~ /^foo/
Я не могу найти модификатор, который делает ^
(или любой другой), символ соответствуют только началу строки. Любая справка значительно ценится.
В Ruby, Caret и Dollar всегда совпадают до и после новых линий. Ruby не имеет модификатора, чтобы изменить это. Используйте \ A и \ z, чтобы соответствовать в начале или конце строки.
От «Программирования Ruby»
'\A
Matches the beginning of the string. '