这个非常简单的RegEx表达式出了什么问题?

时间:2010-04-14 02:22:39

标签: regex

这个很容易。

我正在尝试创建正则表达式,以便在针对以下文字时成功匹配

/default.aspx?

所以我尝试了以下......

^/default.aspx$

并且它无法匹配。

有人可以帮忙吗?

(我猜我搞砸了输入表达式中的\?

3 个答案:

答案 0 :(得分:2)

问题出在.(点),这是一个通配符, 你必须像\.一样逃避它。

另外,因为URL的末尾有一个?而且$(输入结束)在regexp中,所以它不匹配。

正确的正则表达式应为^/default\.aspx(\?.*)?$

答案 1 :(得分:1)

^ / default.aspx $末尾的$表示'匹配字符串的结尾',但您搜索的字符串以'?'结尾。

答案 2 :(得分:1)

也许这样的事情更合适:

^/default\.aspx(\?.*)?$

这将与default.aspx匹配,并带有可选的?whatever-else-that-comes-after