{unknown string}
{unknown string
unknown string}
unknown string
上記の 4 つのケースすべてで、文字列だけを認識する正規表現 (これは不明であるため、特定の文字列に明示的に一致させることはできません) をどのように考え出すのですか?
あまり試していませんよね?
string result = Regex.Match(input, "hello").Value;
中括弧の間に何かが必要な場合:
string result = Regex.Match(input, @"\{?(.*)\}?").Groups[1].Value;
\w+
すべての「単語」文字に一致します
「オプションの中括弧の間」に一般化する必要がある場合は、次を使用できます。
\{?(.+?)\}?
つまり:
\{?
- オプションの中括弧文字。{
正規表現では特別な意味を持つため、エスケープされます。?
量指定子の手段0
または1
時間 (したがってオプション)(.+?)
- 非貪欲モードのすべてを意味します。正規表現が次の直前に停止するように、ここでは貪欲ではない必要があります}
(存在する場合)\}?
- 項目 1 と同じ