1. HOME
  2. ブログ
  3. 正規表現とMTタグで、コメ印を置き換える

正規表現とMTタグで、コメ印を置き換える

複数ページにわたり、複数回出現する「※」を、

すべて「<sup>※<sup>」に置き換えなければ行けないときのMTでのTips。

 

 

手順

  1. <mt:entrybody>に入っている内容をすべて変数に置き換える
  2. 置き換えたい内容を、<mt:setvarblock>で、変数として保存する
  3. MTタグのモディファイア「regex_replace」で、特定条件の「※」を置き換え

という手順で進みます。

置き換えたい内容を、一度変数に入れておかないと上手く作動しませんでした。

 

また、既に<sup></sup> となっているものは、置き換える必要がないため、

これを除外します。

 

方法

まずは、本文の中に「※」が入っているかを確認して、必要なページだけ置き換えることで、処理数を減らす。

<mt:If tag="entrybody" like="※">【処理内容】</mt:If>

つぎに、asterisk というnameに、置き換えたい内容を設定。
※ コメ印とアスタリスクは違いますが、便宜上こうしてみました。

<mt:SetVarBlock name="asterisk"><sup>※</sup></mt:SetVarBlock>

最後に、正規表現を使って置き換え。

今回は、「前後に> や < などのタグが入っていない」という条件で抽出。

<mt:EntryBody regex_replace="/(?!>)※(?!<)/g","$asterisk">


これで、指定した内容に置き換えることができました。

 

 

・・・

ちなみに、アスタリスククロックというものも、存在するようです(笑

cow07-asterisk_top_1

http://item.rakuten.co.jp/sofa-club/coco-cow-07/

  • このエントリーをはてなブックマークに追加
  • LINEで送る

mautic is open source marketing automation