同时匹配/bbbccc/admin/或/bbbccc/admin这两个字符串,并将后面这个admin提取出来的正则表达式怎么写?注意admin是变化的,可能是user等字符串。字符串:
1. /bbbccc/admin/
2. /bbbccc/admin问题:
1.同时匹配这两个字符串中的所有字符;
2.将admin提取出来;
3.这个表达式只能写成一行,也就是只能通过一次性解决。谢谢。
1. /bbbccc/admin/
2. /bbbccc/admin问题:
1.同时匹配这两个字符串中的所有字符;
2.将admin提取出来;
3.这个表达式只能写成一行,也就是只能通过一次性解决。谢谢。
我试图这样写是不行的。
Regex re = new Regex(@"^/bbbccc/([^/]+)/?$", RegexOptions.IgnoreCase|RegexOptions.Compiled);
foreach (string s in slist)
{
Match m = re.Match(s);
if (m.Success)
Console.WriteLine("{0}=>{1}",s,m.Groups[1].Value);
}
帮忙看看,匹配以下各项。
1. /bbbccc/admin
2. /bbbccc/admin/
3. /bbbccc/admin/default.aspx
4. /bbbccc/admin/index.aspx
string ResultString = null;
try {
ResultString = Regex.Match(SubjectString, "(?<=/bbbccc/).+?((?=[|/]))?\\b").Value;
} catch (ArgumentException ex) {
// Syntax error in the regular expression
}
帮忙看看,匹配以下各项。
1. /bbbccc/admin
2. /bbbccc/admin/
3. /bbbccc/admin/default.aspx
4. /bbbccc/admin/index.aspx
但是不匹配其它项,比如:
1. /bbbccc/admin/my.aspx
2. /bbbccc/admin/for.aspx
测试通过可以得到
1. /bbbccc/admin
2. /bbbccc/admin/
3. /bbbccc/admin/default.aspx
4. /bbbccc/admin/index.aspx
1. /bbbccc/admin/my.aspx
2. /bbbccc/admin/for.aspx
中的admin
1. /bbbccc/admin
2. /bbbccc/admin/
3. /bbbccc/admin/default.aspx
4. /bbbccc/admin/index.aspx
而不要匹配下面的所有,等等等:
1. /bbbccc/admin/my.aspx
2. /bbbccc/admin/for.aspx
……
在(?<=/bbbccc/)[^/……中,能不能不要加“?<=”应该怎么写?因为我有特殊用途。
(?<=regex)这是个定式,就是匹配以regex开头的