次のような文字列があります。
string text = "ext_bus 0 0/0/3/0.0 side CLAIMED INTERFACE IDE Primary Channel\r\ntarget 0 0/0/3/0.0.0 tgt CLAIMED DEVICE \r\ndisk 0 0/0/3/0.0.0.0 sdisk";
ext_bus の 3 番目の列 (0/0/3/0.0) と最後の列 (IDE プライマリ チャネル) のテキストを取得するために正規表現の複数行検索を行うと、次のようになります。
Regex regExp = new Regex(@"^ext_bus\s*[0-9]+\s*(?<HWPath>\S+).*\s{2,}(?<BusName>.*?)\r?$", RegexOptions.Multiline);
最初のグループはOKです: "0/0/3/0.0"
しかし、2 番目のグループは次の行です!: "target 0 0/0/3/0.0.0 tgt CLAIMED DEVICE "
Multiline (1 行のみ) でこれをどのように行うことができますか。また、最後の列 (2 つ以上の空白の後の文字列の末尾にあるテキスト) を取得するにはどうすればよいですか。