我有一个类似的字符串
<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);
我得到:卷。9、我要:9
同样,我得到带有“问题”文本的问题编号:
var regEx = new RegExp("Issue\\s\\d+");
var regExVal = attributeVal.match(regEx);
我应该得到:30而不是:第 30 期
问题是我不能使用另一个正则表达式来获取所需的值,不能剥离/parseInt 等,并且模式必须能够在单个正则表达式中获取信息。