2017-03-15 24 views
0

Webloadの左と右の境界を使用して、指定された式から値を抽出できますが、次の正規表現抽出ツールを使用して特定の値(たとえば、index)を抽出できません:Webload PTツールでjavascriptを使用して正規表現エクストラクターを使用する方法はありますか?

index=2&Roll_ID=95372&NAME=ANDY&LastName=MURRAY&birthday 

は、我々はページに次の3応答受け取った場合:ANDY &姓= MURRAY & MPを

インデックス= 2 & Roll_ID = 9572 & NAME =を& インデックス= 1 & Roll_ID = 7875 & NAME = TOM &姓= SHAW &アンペア& インデックス= 7 & Roll_ID = 8343 & NAME = EMA &姓= WINSTON & MP &誕生日

だから、何タグが追加されているので最後のレスポンスからインデックス値(7)を取得する正規表現でなければなりません誕生日私はこの場合、ロールID、名前、姓の正規表現を渡す必要があります誕生日が含まれているものを知っています....インデックスの値を抽出していますが。 LoadRunnerの中のよう

は、我々は次のようにインデックスをキャプチャするために正規表現を書く:のWebLOADで

index=(.*?)&Roll_ID=.*?&NAME=.*?&LastName=.*?&Birthday 

がどのように我々は、この値を抽出書くことができますか?

正規表現エクストラクターを使用するためにWebloadで使用できるinbuilt関数はありますか?

JavaScriptコードを使用してこの値を抽出するにはどうすればよいですか?ここで

+0

申し訳ありませんが、どちらもLoadUIWeb、ものWebLOADはJMeterの で何かを持っているが、タグを修正してください –

答えて

1

クイックJavaScriptの例です。この例では

var str = "index=2&Roll_ID=95372&NAME=ANDY&LastName=MURRAY&" 
var match_result = str.match(/index=([^&]*?)/); 
var index_val = match_result[1]; 

、私はこれが標準のURIクエリ文字列であることを行っていると仮定しています。だから、match()正規表現では、私はindex=を明示的に探していて、値が "&"でなければ、*?は "&"の最初の出現で一致しなくなります。

HTMLエンコードされたクエリ文字列の場合、 "&"の先読みを行い、値の一致の終了を判断する必要があります。

+0

おかげでカールが、我々は、ページに次の3応答受け取った場合: インデックス= 2 & Roll_ID = 9572 & NAME = ANDYを&姓= MURRAY&アンプ& 指数= 1 & Roll_ID = 7875 & NAME = TOM &姓= SHAW&アンプ& インデックス= 7 & Roll_ID = 8343 & NAMEだから、= EMA &姓= WINSTON&アンプ&誕生日 、何がインデックスをキャッチするために、当社の正規表現でなければなりません誕生日** この場合、ロールID、名前、姓の正規表現を渡す必要があります誕生日を含んでいます....我々はIndexの値を抽出していますが。 –

+0

ああ、つまらない。まあ、私が上に書いた正規表現は、変更せずに 'index'を捕捉します。しかし、 '&'を含む値をキャプチャする必要があり、すべてのキー値の区切り文字が常に '&'としてエンコードされる場合は、文字ではなく「&」の先読みアサーションを使用する必要がありますクラス '[^&]'。あなたの正規表現は次のようになります: '/KeyName=(.*?(?& | $))/' –

+0

ありがとうございました......しかし、次のコードも私の仕事でした.. VAR STR =「インデックス= 2 & Roll_ID = 9572 & NAME = ANDY &姓= MURRAY&MP&インデックス= 1 & Roll_ID = 7875 & NAME = TOM &姓= SHAW&アンプ&インデックス= 7 & Roll_ID = 8343 & NAME = EMA &姓= WINSTON&mp&誕生日 "; var re = /index=(.*?)& Roll_ID =。*? & NAME =。*? & LastName =。*? &誕生日/ g; var match_result = re.exec(文字列); var index_val = match_result [1]; InfoMessage(index_val); 出力:7 –

関連する問題