s=
の後で、&
の後ろにあるもの、または文字列の最後を探したい。文字列が正規表現:別のものの前にあるものの後ろにあるものを見つける
トン= QWERTY & S =こんにちは& P = 3
であれば例えば、私はhello
を取得したいです。文字列が
トン= QWERTY & S =こんにちは
であれば、私はまた、hello
はありがとう取得したいです!
s=
の後で、&
の後ろにあるもの、または文字列の最後を探したい。文字列が正規表現:別のものの前にあるものの後ろにあるものを見つける
トン= QWERTY & S =こんにちは& P = 3
であれば例えば、私はhello
を取得したいです。文字列が
トン= QWERTY & S =こんにちは
であれば、私はまた、hello
はありがとう取得したいです!
\bs=([^&]+)
とグラブ$1
はいいですか?
編集:追加語アンカー!それ以外の場合はherpies
、 ...
JavaScriptを使用して$ 1を取得するにはどうすればよいですか? string.matchを使用しますか? – dmr
'r.exec(input)'を使って、ここでrはRegExpオブジェクトで、 'r.match [1]'を使っています。 – fge
+1しかし、 "anything"はゼロかもしれません。私は、 's =([^&] *)'を代わりに使用します。 – ridgerunner
質問文字列の解析を目的としたものを試してみませんか?そうすれば、あなたは車輪を再発明しながら明白な次のハードルに陥ることはないと推測できます。
jQueryの
それとも、少しグーグルができます(JavaScript query stringを参照)そのためのクエリオブジェクトを持っています
function getQuerystring(key, default_)
{
if (default_==null) default_="";
key = key.replace(/[\[]/,"\\\[").replace(/[\]]/,"\\\]");
var regex = new RegExp("[\\?&]"+key+"=([^&#]*)");
var qs = regex.exec(window.location.href);
if(qs == null)
return default_;
else
return qs[1];
}
が便利になります。
http://www.bloggingdeveloper.com?author=bloggingdeveloper
と、たとえば、あなたは、「著者」クエリ文字列の値を取得したい:
var author_value = getQuerystring('author');
これを実行する最も簡単な方法は、セレクタs=([^&]*)&
です。括弧の内側には[^&]
があり、hello&p=3
にはp
の後にもう1つフィールドがあります。
あなたはregexenを使用してクエリ文字列を解析していますか? – sehe
@sehe:いいえ、クエリ文字列ではありません。これは、クエリ文字列の一部を格納するカスタムhtml属性です。 – dmr
はそれほど大した違いはありませんか?非クエリーストリング-yビットを取り除くと、すべてクエリーストリング-yになります。テキストはテキストのみです。形式を賢明に選択すると、作業が少なくなります – sehe