2011-02-04 14 views
0

jsfiddleを参照してください。 http://jsfiddle.net/yNJKj/13/Regexは動作しませんでした

この正規表現は、トップレベルの項目のみを表示することになっています。それは何とかいくつかのカテゴリの第2レベルの項目を示しています。

私は間違っていますか? ありがとう!

+1

他のサイトにリンクしても問題ありませんが、重要な部分(正規表現のようなもの)*もあなたの質問に含めることができます*。 StackOverflowは単独で動作するはずです。他のリソースは削除、移動などが可能です。また、完全な質問を見るために別のサイトに移動する必要はありません。 –

答えて

5

私はあなたがしたい正規表現があると思う:

/^.*\/activity\/[^/]*$/i 

Updated fiddle

それとも

Updated fiddle

おそらく

/^.*\/activity\/[^/]*[a-zA-Z]$/i 
(私はあなたがシングルいることを持っている理由はよく分かりません最後に一致する文字は [a-zA-Z]です。)

あなたの元

/^.*\/activity\/.*[a-zA-Z]$/i 

は...したがって、サブカテゴリを含め、/はあなたの[a-zA-Z]の前.*によって一致することができます。

+0

ありがとうございます。それは魔法のように働く。本当にありがとう。 – user194076

+0

@user:心配しないで、喜んで助けました。 –

1

を含むすべての文字が私の推測では、それが正規表現の終わりに、この部分ですので、私は、あなたが/^.*\/activity\/[a-zA-Z]*$/iに正規表現を変更すべきだと思う:

\/.*[a-zA-Z]$ 

あなたはそれを言っています/

  • 何を大幅に削減

    1. A:次のように一致させます私はあなたがあるとが一致しようとしてではありませんが、そのワイルドカードかに100%ではないんだ任意の長さ
    2. 大文字または小文字
    3. 文字列

    の最後の一部(.*)は、おそらくあなたが望むものだけでなく、あなたが望むものと一致しているでしょう。正規表現をより具体的にすることが役に立ちます。

    単一の順序付けられていないリストではなく、 の代わりに、ネストされたリストを使用するように修正した場合、関連性のないメモでは、おそらくより意味が分かりやすくなります。このような何か:あなたは非破りスペースに固執することを決定しなければ

    <ul> 
        <li> 
         <a href="*">Category</a> 
         <ul> 
          <li><a href="*">Sub-Category</a></li> 
          <li><a href="*">Sub-Category</a></li> 
         </ul> 
        </li> 
    </ul> 
    

    しかし、その後、あなたは隠されますかを決定するために、これらのにを使用することができませんでしたか?それは&nbsp;で始まるものを隠すことで、あなたがしなければならないことを達成するだろうと思われます。

  • 関連する問題