特定のタグを持つ文字列から文字列を取得する方法を探しています。たとえば、次の文字列があります。これ"Hello <date> My <name> is <your name>"
を返す必要があります。
<date>
<name>
<your name>
配列またはリストで
<> で始まり <> で終わる単語のみ。
どうもありがとう!:-)
正規表現パターン<.*?>
を使用して各単語を取得できます。つまり、
MatchCollection matches = Regex.Matches(input, "<.*?>");
その後、コレクションを反復処理してタグを取得できます。
Mike Precup に 1 分差をつけられました :) とにかく、正規表現を使用する必要があります。例:
var s = @"some <thing> is different <about> this <string>";
var pattern = @"(?<=\<)(.*?)(?=\>)";
var regex = new Regex(pattern);
var matches = regex.Matches(s);
foreach (Match match in matches)
{
match.Groups[0].Captures[0].Value.Dump(); // using LINQPad
}
出力は次のとおりです。
thing
about
string
よろしく、P.