1

フィードしているID(​​つまり、12072)の行に表示される番号「1」を抽出しようとしています。

この正規表現を機能させるために過去2時間努力してきましたが、途方に暮れています。これまでのところ私は持っています

12072.*?(\d+)(?!.*\d) 

しかし、これは12072から1までのすべてを抽出します。テキストは次のとおりです。

<td id="12072" scope="#999999" bgcolor="#999999" style="width: 65; color:#999999" align="center"  onclick="DaySelect(this)" title="">1</td>
<td id="12073" scope="#999999" bgcolor="#999999" style="width: 65; color:#999999" align="center"  onclick="DaySelect(this)" title="">1</td>

指定されたIDの行末から1番だけを一致させるにはどうすればよいですか?これを行う方法は確かにありますか?

助けていただければ幸いです。

4

3 に答える 3

3

あなたの試合はグループ1になります

"12072"[^>]*>(\d+)

そしてここに説明があります

Match the characters “12073” literally «12073»
Match any character that is NOT a “&gt;” «[^>]*»
   Between zero and unlimited times, as many times as possible, giving back as needed (greedy) «*»
Match the character “&gt;” literally «>»
Match the regular expression below and capture its match into backreference number 1 «(\d+)»
   Match a single digit 0..9 «\d+»
      Between one and unlimited times, as many times as possible, giving back as needed (greedy) «+»
于 2012-06-01T16:37:24.547 に答える
1
"12072"[^>]+\>([^\<])

たとえば、120を検索する場合に備えて、引用符が含まれています。引用符がないと、両方の行に一致します。

また、タグのすべてのテキストコンテンツを取得し、数字だけを取得します。

<と>はjmeterでエスケープする必要がない場合があります。そうでない場合は、先頭のスラッシュを削除します。

于 2012-06-01T16:41:22.750 に答える
1

次のようなxp​​athクエリを使用してより良いXPathExtractorを試すことができます

//td[@id='${id}']/text()

ここ${id}で、jmeter変数は必要な値(12072など)に設定されていますか、または単に

//td[@id='12072']/text()

パラメータ化が必要ない場合。

注:XPath Extractorのコントロールパネルで[ Tidy(トレラントパーサー)を使用する]オプションがオンになっていることを確認してください。これは、xpathを使用してhtml応答を処理するために必要です。

于 2012-06-01T16:49:01.720 に答える