次の HTML 文字列があります:
ディスカッションへの返信 (解決策)
$s = '<td align="Center" rowspan="2" width="7%">aaaa<br>bbbb<br>cccc<br>dddd<br></td >';echo preg_replace('/<br>\w+/', '', $s, 2);
<td align="Center" rowspan="2" width="7%">aaaa<br>dddd<br></td >
単独で実行するのは問題ありませんが、上の式が実際に文字列で使用されると、2 番目の段落に br が含まれているためです。 ( ) 、、最後の段落 br に「-」が含まれており、インターセプトに問題があります。
$s = ' インターセプトは次のようになります:
$s = '
$s = '<td align="Center" rowspan="2" width="7%">aaaa<br>11(22)<br>cccc<br>dd-dd<br></td >';echo preg_replace('/<br>[\(\)-\w]+/', '', $s, 2);
補足:aaaa、ccccは中国語です。
補足説明:aaaaとccccは中国語です。
りーさん
ありがとうございます。最初の段落はまだ間違っているので、元の文字を直接貼り付けた方がよいでしょう:
2 つの効果を出力する場合:
1.
$s = '<td align="Center" rowspan="2" width="7%">中文<br>11(22)<br>拼音<br>dd-dd<br></td >';echo preg_replace('/<br>[\x{4e00}-\x{9fa5}\w\(\)-]+/u', '', $s,2) ;//UTF-8编码
2
echo preg_replace('/<br>[^<]+/', '', $s, 2);
echo preg_replace('/\(.+?\)/', '', $s);
2
echo preg_replace('/<br>[^<]+/', '', $s, 2);
echo preg_replace('/\(.+?\)/', '', $s);
echo preg_replace('/<br>[\x{4e00}-\x{9fa5}\w\(\)\-,]+/u', '', $s,2) ;//UTF-8编码
jordan102 さん、2 番目の echo preg_replace('/(.+?)/', '', $s) も「Wang
」の部分を切り取る必要がありますので、よろしくお願いします。文中の動作は問題ありませんが、文の前に文やスペースがあると動作に問題があります