В контексте использования в языках регулярные выражения действуют на строки, а не на строки. Таким образом, вы сможете нормально использовать регулярные выражения, предполагая, что входная строка имеет несколько строк.
В этом случае данное регулярное выражение будет соответствовать всей строке, поскольку присутствует «». В зависимости от особенностей реализации регулярного выражения, значение $ 1 (полученное из «(. *)») Будет либо «fghij», либо «abcde \ nfghij». Как уже говорили другие, некоторые реализации позволяют вам контролировать, стоит ли "." будет соответствовать новой строке, давая вам выбор.
Использование регулярных выражений на основе строки обычно используется для таких вещей, как egrep.