在字符串:
http://www.repair.com/signin.aspx?name=haocer
中匹配出字符串:
signin.aspx
或者在:
http://www.repair.com/admin/signin.aspx?name=haocer
中匹配出字符串:
admin/signin.aspx
也就是说取“?”号和第一个“/”号之间的所有字符
http://www.repair.com/signin.aspx?name=haocer
中匹配出字符串:
signin.aspx
或者在:
http://www.repair.com/admin/signin.aspx?name=haocer
中匹配出字符串:
admin/signin.aspx
也就是说取“?”号和第一个“/”号之间的所有字符
Regex reg = new Regex(@"[^/]+/([^/][^\?]*?)($|\?)");
Match m = reg.Match(str1);
if(m.Success)
{
Response.Write(m.Result("$1")+"<BR>");
}
str1 = "http://www.repair.com/admin/signin.aspx?name=haocer ";
reg = new Regex(@"[^/]+/([^/][^\?]*?)($|\?)");
m = reg.Match(str1);
if (m.Success)
{
Response.Write(m.Result("$1"));
}
reg不用重新实例化,因为他们是一样的
Match m = ex.Match("http://www.repair.com/admin/signin.aspx?name=haocer ");
Console.WriteLine(m.Value);
string input = @"http://www.repair.com/signin.aspx?name=haocer
中匹配出字符串:
signin.aspx
或者在:
http://www.repair.com/admin/signin.aspx?name=haocer ";
Match m = Regex.Match(input, "(?i)(?<=http://[^/]+/)[^?]+");
while(m.Success)
{
Console.WriteLine(m.Value);
m = m.NexeMatch();
}