2017-10-11 14 views
0

したがって、異なるURLパラメータで動的リダイレクトを行う小さなアプリケーションがあります。 URLを作る常に一致しない特定のURLパラメータを一致させる

$request = array(
    'extension' => 'rb', 
    'type'  => 'blob', 
    'size'  => '234900', 
    'name'  => 'sdtt', 
    'state'  => '1', 
    'source' => 'example.com', 
) 

?extension=rb&type=blob&size=234900&name=sdtt&state=1&source=example.com 

しかし、動的な部分は、配列にキーを追加または削除することができ、私のPHPスクリプト上のアレイは、このように、初期順序を確立します。追加可能なキーの1つはexpiresです。これはURLの任意の位置に置かれます。他のパラメータも追加できるため、常にsourceの後になることを保証できません。 URLパラメータ。

私の目標は、(例えば)type=anythingexpires=anythingをターゲット変数に保存して(再ロードするページを避けるために、多分pushState()付き)URLからそれらを削除することです。基本的には:

拡張子= RB & type=blob&サイズ= 234900 &名= SDTT &状態= 1つの&ソース= example.com &expires=1507755807

私の試みであった:

(type=[^&]+)(expires=[^&]+) 

しかし、私を取得するだけでexpiresパラメータが存在する場合は存在し、存在しない場合は何も一致しません。

答えて

2

追加| (パイプ)のために「または」

(type=[^&]+)|(expires=[^&]+) 

ここhttps://regex101.com/r/rXQijo/1

+0

パイプ文字...私はそれを信じることができない例です。私は今やとても馬鹿だと感じています。ハハは感謝しています。 – Mithc

関連する問題