另一个正则表达式 - 如何识别查询字符串
我正在使用urlrewriting.net作为我的urlrewriting。我需要一些正则表达式的帮助(我仍然没有得到....)。另一个正则表达式 - 如何识别查询字符串
我想匹配
-
www.mysite.com/restaurant
- >匹配,并返回 “restaurant
” -
www.mysite.com/restaurant?page=1
- >匹配和 回报 “restaurant
” -
www.mysite.com/restaurant?[SOME_RANDOM_QUERYSTRING]
- >匹配 并返回“restaurant
“ -
www.mysite.com/seattle/restaurant
- >匹配并返回”seattle
“和 ”restaurant
“ -
www.mysite.com/seattle/restaurant?page=1
- >匹配和 回报”seattle
“和”restaurant
“ -
www.mysite.com/seattle/restaurant?[SOME_RANDOM_QUERYSTRING]
- >匹配 并返回”seattle
“和”restaurant
“ -
www.mysite.com/seattle/restaurant-michelangelo
- >不赶上 -
www.mysite.com/seattle/restaurant/sushi
- >匹配,并返回 “seattle
” 和 “restaurant
” 和 “sushi
” -
www.mysite.com/seattle/restaurant/sushi?page=1
- >匹配,并返回 “seattle
” 和 “restaurant
” 和 “sushi
” -
www.mysite.com/seattle/restaurant/sushi?[SOME_RANDOM_QUERYSTRING]
- > 匹配,并返回 “seattle
” 和 “restaurant
” 和 “sushi
” -
www.mysite.com/seattle/restaurant-michelangelo
- >不赶上
点是我需要url的目录部分,而不是查询字符串部分。问题是,我可以从我的网络分析工具看到,人们用两个词搜索。他们都搜索城市(西雅图)+类别(餐厅),例如。 “西雅图餐厅”以及城市(西雅图)+餐厅名称(餐厅 - 米开朗基罗)等。 “西雅图餐厅 - 米开朗基罗”。从结构的角度来看,这当然是一团糟,因为这不是一个层次结构。在理想的世界里,等级将是城市 - >类别 - >餐厅。但我仍然希望在我的url结构中适应这种搜索行为。同时我也有一个列出该国所有餐馆的网页。
我想就如何创建正则表达式以及创建它们的最有效方式提供帮助,因为我猜它们可能会变得相当昂贵。
感谢
托马斯
使用本:
/\/[A-Za-z0-9]{1,}(?:\/|$|\?)/
匹配/然后字母,数字1 infininity斜线,线的末端,或者问号
嗯...我无法让它工作。我没有那么多的类别,所以也许我应该做一些类似^〜/(.*)/ restaurant,^〜/(.*)/café等的东西。然后我需要删除任何查询字符串(如果它们存在)。那么不管查询字符串中的参数数量多少,一个正则表达式如何去除查询字符串(如果存在的话)?谢谢 – ThomasD 2012-02-03 23:45:26
你怎么一个区分类别和名称?所有的名字都有破折号或者什么? – user1096188 2012-02-03 17:40:12