解决方案 »

  1.   

    $s = '文字文字中间有个长下划<u>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</u>空白,又有一个短下划<u>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</u>了,或者这里是第三个<u>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</u>下划。';
    $i = 0;
    echo preg_replace('/<u>.+?<\/u>/se', '"<span id=\"u" . ++$i . "\"></span>"', $s);