1

文字列を比較するための正規表現を書き込もうとすると、大きな問題が発生します。私は今2時間以上試しており、忍耐力を失いました. 要するに、私がやろうとしているのは、次の文字列cgidの行末または次の前後の文字を取得することです。&

#cgid=neu#cgid=neu&start=2

使用してみstringVar.match("/&cgid=(.*?)&/")ましたが、戻りますnull

/次の文字列の後の最後の単語も取得する必要があります。

"/s/SiteName/neu".

私はこれが簡単であることを知っていますが、正規表現を学ぶにはあまりにも頭が悪いようです.

4

3 に答える 3

2

文字列を で表示し#cgid=...、それを で照合しようとするのはなぜ&cgid=...ですか? それはまったく意味がありません。「正規表現」という用語の定義により、正規表現は完全に論理的です。それは簡単です:

stringVar.match(/\bcgid=([^&]+)/);

目的のターゲットは[1]、配列のインデックスになります。

「最後の単語/」部分については、これを試してください:

stringVar.split("/").pop();
于 2013-09-21T09:18:14.643 に答える
0

\w+=([^&]+)

ここでグリップを最初にキャプチャすることでそれを持っています

于 2013-09-21T09:17:17.420 に答える
0

次のグループ 1 を試してください。

cgid=(.*?)(&.*)?
于 2013-09-21T11:27:29.610 に答える