更新この投稿は、RichTextBoxes を使用するコーダーに役立ちます。一致は通常の文字列に対して正しいです。これは見ませんでした。また、richTextBox.Rtf で「ä」が「\e4r」に変換されるのも見ませんでした。したがって、Match.Value は正しいです - 人的エラーです。
RegEx は正しいテキストを見つけますが、ドイツ語の "ä" を "\'e4" に置き換えるため、Match.Value は間違っています!
example_text = " Primär-ABC " とし、次のコードを使用します
String example_text = "<em>Primär-ABC</em>";
Regex em = new Regex(@"<em>[^<]*</em>" );
Match emMatch = em.Match(example_text); //Works!
Match emMatch = em.Match(richtextBox.RTF); //Fails!
while (emMatch.Success)
{
string matchValue = emMatch.Value;
Foo(matchValue) ...
}
その場合、emMatch.Value は「 Primär-ABC 」ではなく「 Prim\'e4r-ABC 」を返します。
ドイツ語の ä は \'e4! に変換されます。正確な文字列で作業したいので、emMatch.Value をPrimär-ABCにする必要があります - どうすればそれを達成できますか?