簡體   English   中英

HTML表使用PHP將字符串替換為正則表達式

[英]HTML table replacing strings with regular expressions using PHP

我有一堆數據表,我需要向它們添加一個php函數。 以下是數據通常的外觀

<TR class="tr7">
 <TD class="td70"><FONT class="ft5">Chateauguay</FONT></TD>
 <TD class="td71">&nbsp;</TD>
 <TD class="td72">80</TD>
 <TD class="td73">&nbsp;</TD>
 <TD class="td74">180</TD>
 <TD class="td73">&nbsp;</TD>
 <TD class="td75">290</TD>
 <TD class="td76">&nbsp;</TD>
 <TD class="td73">&nbsp;</TD>
 <TD class="td72">145</TD>
 <TD class="td73">&nbsp;</TD>
 <TD class="td74">190</TD>
</TR>

以下是我需要添加的內容。

<TR class="tr11">
 <TD class="td70"><FONT class="ft5">Boucherville</FONT></TD>
 <TD class="td71">&nbsp;</TD>
 <TD class="td72"><?=t(80)?></TD>
 <TD class="td73">&nbsp;</TD>
 <TD class="td74"><?=t(180)?></TD>
 <TD class="td73">&nbsp;</TD>
 <TD class="td75"><?=t(290)?></TD>
 <TD class="td76">&nbsp;</TD>
 <TD class="td73">&nbsp;</TD>
 <TD class="td72"><?=t(145)?></TD>
 <TD class="td73">&nbsp;</TD>
 <TD class="td74"><?=t(190)?></TD>
</TR>

請注意,價格中的###被添加到中間的###處。

我想通過PHP做到這一點,我在想一個preg exp,但是我什至不知道從哪里開始。 Obv,讀寫部分是fopen和fwrite / fread等。

  • 史蒂夫

在每個文件上嘗試使用此preg替換。

return preg_replace("/\>([0-9]+)\</", "><?=t(\$1)?><", $text);

這個正則表達式應該為您做:

echo preg_replace('~>([0-9]+)<~', '><?=t($1)?><', $html);

將產生:

<TR class="tr7">
 <TD class="td70"><FONT class="ft5">Chateauguay</FONT></TD>
 <TD class="td71">&nbsp;</TD>
 <TD class="td72"><?=t(80)?></TD>
 <TD class="td73">&nbsp;</TD>
 <TD class="td74"><?=t(180)?></TD>
 <TD class="td73">&nbsp;</TD>
 <TD class="td75"><?=t(290)?></TD>
 <TD class="td76">&nbsp;</TD>

 <TD class="td73">&nbsp;</TD>
 <TD class="td72"><?=t(145)?></TD>
 <TD class="td73">&nbsp;</TD>
 <TD class="td74"><?=t(190)?></TD>
</TR>

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM