我希望从div
例如:
<div class="publication_date> c2011. </div>
应该出现
<div class="publication_date> 2011 </div>
我试过
$(".publication_date").html($(".publication_date").html().replace(/[^0-9]+/g, ''));
它将所有日期设为2000
答案 0 :(得分:4)
您需要使用.each()
:
$('.publication_date').each(function() {
$(this).html($(this).html().replace(/\D+/g, ''));
});
.html()
函数,如果没有参数传递,则返回初始选择器匹配的第一个元素的值。如果你的第一个元素是“c2009。”,那么你所有的其他元素都将是“2009”而不是“2000”。
使用.each()
,您可以单独处理每个“publication_date”元素。
我也修改了正则表达式; \D
表示“不是数字”。