2012-02-03 8 views
0

私は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"
  • を返します>試合と " seattle" と " restaurant" と " sushi"
  • www.mysite.com/seattle/restaurant/sushi?[SOME_RANDOM_QUERYSTRING]戻る - -
  • www.mysite.com/seattle/restaurant/sushi?page=1> 試合とリターン "seattle" と "restaurant" と "sushi"
  • www.mysite.com/seattle/restaurant-michelangelo - >ないしキャッチ

私はURLのディレクトリ部分が必要であり、クエスチング文字部分ではありません。私のウェブ解析ツールからは、2単語で検索することができます。彼らは都市(シアトル)+カテゴリ(レストラン)を検索します。 "シアトルレストラン"と市(シアトル)+レストラン名(レストラン - ミケランジェロ)など。 "シアトルレストラン - ミケランジェロ"。それは階層ではないので、構造的な観点から見ると、もちろん混乱です。理想的な世界では、階層は都市→カテゴリ→レストランとなります。私はまだ私のURL構造でこの検索動作を調整したいと思います。同時に、私はまた、その国のすべてのレストランをリストしたページを持っています。

正規表現を作成する方法と、非常に高価になる可能性があるので、それらを作成する最も効率的な方法を作成する方法についてのヘルプが必要です。

おかげ

トーマス

+0

そして、どのように区別しますカテゴリと名前?すべての名前にはダッシュが付いていますか? – user1096188

答えて

0

使用この:

/\/[A-Za-z0-9]{1,}(?:\/|$|\?)/ 

マッチ/英数字1-infininity、その後、行末にスラッシュ、または疑問符

+0

うーん...私はそれを働かせることはできません。私はそれほど多くのカテゴリを持っていないので、ちょうど^〜/(.*)/レストラン、^〜/(.*)/カフェなどのようなことをしなければならないかもしれません。 )。では、クエリーストリングのパラメータの数に関係なく、クエリーストリングが存在する場合、それを削除する正規表現の外観はどのようになりますか?ありがとう – ThomasD

関連する問題