0

我有我在我的网站上使用的这个正则表达式

^.*/([a-z0-9,-]+)/([a-z0-9,-]+)/$

我的问题是谁可以在我的正则表达式中使用查询字符串,

/about-us/contact/?l=en -> page.aspx?id=12&l=en

其中 id=1 = /about-us/contact/

其中 l=en = /?l=en

编辑:

^.*/([a-z0-9,-]+)/([a-z0-9,-]+)/(\?l=en)

我收到错误:\ i C#

正则表达式中有没有办法判断 ?x=x 是否存在正则表达式是否匹配,但如果 ?x=x 不存在 /about-us/contact/ 的正则表达式是否匹配?

谢谢,

4

2 回答 2

0

如果您想?在搜索模式中包含一个字符,您只需使用反斜杠对其进行转义。因此,如果您想查找 'l=en',请查找 '\?l=en'

^.*/([a-z0-9,-]+)/([a-z0-9,-]+)/(\?l=en)
于 2009-06-26T12:08:45.530 回答
0

表达

[\?&](?<name>[^&=]+)=(?<value>[^&=]+)

描述 匹配 HTTP 查询字符串中的名称/值对,将名称放入名为“name”的组中,将值放入名为“value”的组中

匹配-->http://stackoverflow.com/?a=b&c=d

不匹配-->http://stackoverflow.com/

作者评价:凯文斯宾塞。

于 2011-11-30T13:12:16.580 回答