私は次のような文字列を持っています
<dt>Source:</dt>
<dd>
Emergence: Title; 2005, Vol. 9 Issue 30, p120-203, 12p
</dd>
今、私はそれに対して異なる値をフェッチする正規表現です。つまり、ボリューム、発行、日付などです。したがって、テキスト全体をフェッチします。
var attr = jQuery("dl dt:contains('Source:') ~ dd:eq(0)").text();
また、正規表現を使用して、次のようなさまざまな値をフェッチします。
私が使用するスタートページを取得するには、正規表現に従ってください。
var regex = new RegExp("p\\d+(?=[-\\s]{1})");
var regexValPS = attr.match(regex);
戻り値:p120、期待値:120
同様に、ボリューム情報を取得するには、次の正規表現を使用します。
var regexVol = new RegExp("Vol.\\s\\d+");
var regexValVol = attributeVal.match(regexVol);
私が得る:Vol。9、欲しい:9
同様に、「Issue」テキストで問題番号を取得しています。
var regEx = new RegExp("Issue\\s\\d+");
var regExVal = attributeVal.match(regEx);
代わりに: 30を取得する必要があります: Issue 30
問題は、別の正規表現を使用して目的の値を取得できないこと、strip / parseIntなどができないこと、およびパターンが単一の正規表現で情報をフェッチできる必要があることです。