JavaScript正则表达式并像PHP preg_replace一样替换


JavaScript regex and replace like PHP preg_replace

我在php中有以下代码:

    $link ='mylink';
    $description = '<p><a href="http://news.yahoo.com/obama-plans-full-court-press-sway-congress-syria-004845350.html"><img src="http://l3.yimg.com/bt/api/res/1.2/hmYETKsJS2CXBsG7oO125w--/YXBwaWQ9eW5ld3M7Zmk9ZmlsbDtoPTg2O3E9ODU7dz0xMzA-/http://media.zenfs.com/en_us/News/Reuters/2013-09-07T045234Z_3_CBRE9851BPL00_RTROPTP_2_RUSSIA-G20.JPG"></a>By Roberta Rampton and Susan Cornwell WASHINGTON (Reuters) - ...</p>';
    $pattern = "/(?<=href=('"|'))[^'"']+(?=('"|'))/";
    $new_des = preg_replace($pattern,"?url=".$link,$description);

如何在javascript中做到这一点?

pattern = /(href=["'])[^"']+(?=["'])/
new_des = description.replace(pattern, "$1?url=" + link)

JS不支持回溯,因此您必须捕获第一个组并在使用$1替换时将其重新插入。