0

括弧内のデータの値を取得しようとしています。これが私のJavascriptコードです。

var info = $('.printedsubtext:first');
re = /\((.*)\)/i;
console.log(info.match(re)[1]);​

.printedsubtext は次のようになります (直後に空の div があることに注意してください。最初に出現したものを選択しています)

<div class="printedsubtext" style="margin-top: 10px;"> 
<strong>Merchant SKU:</strong> 155687<br> 
<strong>ASIN:</strong> B009NFT9PK<br>
<strong>Listing ID:</strong> 1009MIKWRIP<br>
<strong>Order-Item ID:</strong> 02975468341162<br>
<strong>Condition:</strong> Used - Good<br>
<strong>Comments:</strong> Publisher: Thomas Y. Crowell&amp;lt;br&amp;gt;Date of Publication: 1973&amp;lt;br&amp;gt;Binding: hard cover&amp;lt;br&amp;gt;Edition: &amp;lt;br&amp;gt;Condition: Good/Fair&amp;lt;br&amp;gt;Description: (M481)&amp;lt;br&amp;gt;<br>
<div class="printedsubtext" style="margin-top: 10px;">
</div>
</div>

M481 をコンソールに出力するコードが必要です。

ただし、これにより構文エラーが発生します。何らかの理由で、情報を次のように置き換えると機能します

var info = "Cats make (me) happy";

どんな助けでも大歓迎です。

4

2 に答える 2

4

match文字列のメソッドです。jQuery コレクションから呼び出しています。選択した要素のテキストを使用してみてください。

検索に HTML を含めたい場合は、次を使用する必要があります。

var info = $('.printedsubtext:first').html();

テキスト ノードのみを考慮したい場合は、次を使用します。

var info = $('.printedsubtext:first').text();
于 2013-02-02T21:58:07.743 に答える
0

これはうまくいくはずです:

var txt = $(".printedsubtext").text();
re = txt.match(/\((.+)\)/);
alert(re[1]);
于 2013-02-02T22:44:08.343 に答える