请教一个正则表达式

fy050 2007-09-06 05:28:15
OldUrlPath = "(.*)/(admin|memberlogin|verifyimg|WebResource)(.*)";
//Regex(string,RegexOptions)用修改模式的选项为指定的正则表达式初始化并编译 Regex 类的一个新实例
//RegexOptions.IgnoreCase是指不区公大小写的匹配!
Expressions = new Regex(OldUrlPath, RegexOptions.IgnoreCase);
//Regex的IsMatch(string)方法:指示 Regex 构造函数中指定的正则表达式在输入字符串中是否找到匹配项。
//HttpContextRewritePath方法:指定内部重写路径,并允许请求的 URL 与资源的内部路径不同。RewritePath 用在无 Cookie 会话状态中。
别 if (!Expressions.IsMatch(Request.Url.ToString()))
{
Context.RewritePath("~/error.aspx?error=close");
}
return false;

请问那个OldUrlPath的正则表达式是匹配什么数据的? 谢谢了,查了半天,还是搞不懂~`~ 谢谢
...全文
100 9 打赏 收藏 转发到动态 举报
写回复
用AI写文章
9 条回复
切换为时间正序
请发表友善的回复…
发表回复
fy050 2007-09-06
  • 打赏
  • 举报
回复
非常感谢!
flamelp 2007-09-06
  • 打赏
  • 举报
回复
p?就是字符串中可以有一个p也可以没有p
fy050 2007-09-06
  • 打赏
  • 举报
回复
\d是与任何十进制数字匹配 但p?找不到
fy050 2007-09-06
  • 打赏
  • 举报
回复
OldUrlPath = "(.*)/([cn])(\\d+)(p?)(\\d*)\\.aspx";
(.*)/是知道了,[]是匹配单个字符,\d和p?是匹配什么呢? 谢谢
flamelp 2007-09-06
  • 打赏
  • 举报
回复
if (!Expressions.IsMatch(Request.Url.ToString()))
{
Context.RewritePath("~/error.aspx?error=close");
}
这里应该是验证路径如果不包含admin|memberlogin|verifyimg|WebResource其中的一个值将跳转到错误页面
fy050 2007-09-06
  • 打赏
  • 举报
回复
哦.... 谢谢flamelp(翔天) 和 xiaomatian(趴趴熊◎%#……※×)
fy050 2007-09-06
  • 打赏
  • 举报
回复
具体是匹配什么呢? 能否说详细点?
比如那上面的admin error是用来干吗的等等? 谢谢
主要是想详细了解这句话的意思
flamelp 2007-09-06
  • 打赏
  • 举报
回复
OldUrlPath = "(.*)/(admin|memberlogin|verifyimg|WebResource)(.*)";
(.*) .符号匹配除换行符以外的任何字符 *符号匹配0个或多个字符
/ 字符串中要有"/"
(admin|memberlogin|verifyimg|WebResource) 字符串中需要包括(admin,memberlogin,verifyimg,WebResource中的任意一个.
例如:
aa/adminddd
ec/memberlogin
xiaomatian 2007-09-06
  • 打赏
  • 举报
回复
匹配Request.Url的

62,074

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术交流专区
javascript云原生 企业社区
社区管理员
  • ASP.NET
  • .Net开发者社区
  • R小R
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

.NET 社区是一个围绕开源 .NET 的开放、热情、创新、包容的技术社区。社区致力于为广大 .NET 爱好者提供一个良好的知识共享、协同互助的 .NET 技术交流环境。我们尊重不同意见,支持健康理性的辩论和互动,反对歧视和攻击。

希望和大家一起共同营造一个活跃、友好的社区氛围。

试试用AI创作助手写篇文章吧