我想捕捉下面的字符串中使用c#正則表達式的引號中的文本。C#正則表達式,匹配字符串的內容
我已經嘗試了一大堆的模式,但他們都不匹配..
誰能幫助?
text1.text2 = text3["THISISWHATIWANTTOCAPTURE"].text4();
我想捕捉下面的字符串中使用c#正則表達式的引號中的文本。C#正則表達式,匹配字符串的內容
我已經嘗試了一大堆的模式,但他們都不匹配..
誰能幫助?
text1.text2 = text3["THISISWHATIWANTTOCAPTURE"].text4();
我會拿出最簡單的表達是
[a-zA-Z0-9]+\["(.+)"\]
嘗試:
Match match = Regex.Match(string, @"\"([^\"]+)\"");
這人會做到這一點:
(?<=\").*(?=\")
您可以測試以上正則表達式在這裏:
在C#:
class Program
{
static void Main(string[] args)
{
string pattern = "(?<=\").*(?=\")";
string str =
"text1.text2 = text3[\"THISISWHATIWANTTOCAPTURE\"].text4();";
Match match = Regex.Match(str, pattern);
foreach (var c in match.Captures)
{
Console.WriteLine(c);
}
}
}
輸出:
THISISWHATIWANTTOCAPTURE
有多個捕獲的組。 OP希望只捕獲「THISISWHATIWANTTOCAPTURE」 – 2010-09-06 02:20:05
邁克爾,沒有更多的捕獲組... – 2010-09-06 03:16:40
注:我不在乎,如果引號是匹配與否的一部分。 – Grant 2010-09-06 02:07:20
已經嘗試了這麼多,這是最後一個...正則表達式正則表達式=新正則表達式(「。* \」(。*)\「。*」); – Grant 2010-09-06 02:08:47
他們被稱爲「雙引號」。 – 2010-09-06 02:14:20