我有一些字符串。我想例如第一和最后一个单引号 之间总字符串:正则表达式 - 第一个和最后一个单引号之间的字符串
string val = "'Scale['#13212']'"; //--->Scale['#13212']
string val2= "'Scale[#13212']"; //--->Scale[#13212
string val3="abc'23'asad"; //--->23
我有使用以下
例如:
string val = "'Scale['#13212']'"; //--->]
当我使用捕捉到的字符串的整个值和一组(在组[1] ONLY)与括一对单引号的它工作正常与贪婪 但是,当我想捕捉一个字符串的全部价值和一组(只有组[1])与多对单引号的封装,它只能捕捉字符串的值与最后对但不封闭第一个和最后一个单引号之间的字符串。
例如:
string val1 = "Content:abc'23'asad"; //--->23
string val2 = "Content:'Scale['#13212']'ta";
Match match1 = Regex.Match(val1, @".*'(.*)'.*");
Match match2 = Regex.Match(val2, @".*'(.*)'.*");
if (match1.Success)
{
string value1 = match1.Value;
string GroupValue1 = match1.Groups[1].Value;
Console.WriteLine(value1);
Console.WriteLine(GroupValue1);
string value2 = match2.Value;
string GroupValue2 = match2.Groups[1].Value;
Console.WriteLine(value2);
Console.WriteLine(GroupValue2);
Console.ReadLine();
// using greedy For val1 i am getting perfect value for-
// value1--->Content:abc'23'asad
// GroupValue1--->23
// BUT using greedy For val2 i am getting the string elcosed by last single quote-
// value2--->Content:'Scale['#13212']'ta
// GroupValue2---> ]
// But i want GroupValue2--->Scale['#13212']
}
请帮帮忙!
2017-05-05
one010
+0
答案在[this linked post](http://stackoverflow.com/a/5662956/3832970)。 –
+0
编辑问题 –