我需要从下面的HTML中获取日期(就像字符串一样):
<div class="patNameAddress">
<strong>Lastname, Firstname</strong><br />
Stree Address<br />
City ST Zip<br />
<br />
EXP DATE:10-08-2011<br />
<div>
日期字符串始终采用mm-dd-yyyy格式,并且始终以EXP DATE开头:
如何在页面上找到此字符串并将其返回以用作变量?
答案 0 :(得分:9)
var matches = text.match(/EXP DATE:(\d{2}-\d{2}-\d{4})/));
matches[1]
仅包含日期,matches[0]
包含整个匹配(即包含EXP DATE:)。
答案 1 :(得分:1)
将日期放在一个范围内<span class='date'>10-08-2011</span>
,然后使用jQuery,您可以使用
$(function(){
alert($(".patNameAddress .date").text());
});
答案 2 :(得分:1)
使用jQuery:
function findDates(){
var dates = [];
$('.patNameAddress').each(function(){
date_temp = $(this).html().match(/EXP DATE\:(\d{2}-\d{2}-\d{4})/);
if (date_temp.length) dates.push(date_temp[1])
});
return dates;
}
奖金:Fiddle!
答案 3 :(得分:1)
这可以完成工作:
[].map.call( div.childNodes, function ( node ) {
return node.nodeType === 3 ? node.data : '';
}).join( '' ).match(/EXP DATE:(.+)/)[1].trim()
其中div
是对该DIV元素的引用。
现场演示: http://jsfiddle.net/2ahmy/1/
注意:如果您在没有“EXP DATE:”文本的DIV上运行此代码,该代码将会中断。