RegEx для соответствия строке ТОЛЬКО, если она находится в конце строки [duplicate]

1
задан Alan Moore 31 March 2014 в 12:44
поделиться

1 ответ

Вы не даете достаточно подробностей. Поскольку ваше первое выражение работает, я предполагаю, что вы используете режим Singleline.

Следующее мое предположение состоит в том, что эта строка является частью большей строки.

^ соответствует начало строки по умолчанию

$ по умолчанию соответствует концу строки.

Теперь, поскольку ваша строка содержит материал до и после, вам нужно изменить это поведение по умолчанию:

С модификатором Multiline, ^ соответствует началу строки, а $ - концу строки. Дополнительную информацию см. В документации .

Итак, ваше регулярное выражение должно выглядеть примерно так:

Regex regx = new Regex("(?<=^(\s*Owner))(.|\n)*?(?=\s*Information$)", RegexOptions.Singleline | RegexOptions.Multiline);
4
ответ дан Liath 19 August 2018 в 03:58
поделиться
Другие вопросы по тегам:

Похожие вопросы: