SAKURAスクリプトタグを取り除く¶
概要¶
文字列に含まれるSAKURAスクリプトタグを完全に除去する関数。バージョン4/5互換版とバージョン5専用版の2種類が提供されている。
バージョン4/5互換版¶
ダウンロードファイル(EraseTag1.txt / EraseTag2.txt)としてページに添付されており、コピーして利用する。
バージョン5専用版(正規表現使用)¶
基本版¶
RemoveSakuraScript
{
_text = RE_REPLACE(_argv[0],'\\__{0,2}[a-zA-Z0-9\*!&-](\d|\[("([^"]|\\")+?"|([^\]]|\\]+?)+?\])?','')
_text = REPLACE(_text,'\\','\')
_text
}
ネガティブ後読みアサーション版(エスケープされたタグを無視)¶
RemoveSakuraScript
{
_text = RE_REPLACE(_argv[0],'(?<!\\)\\_{0,2}[a-zA-Z0-9\*!&-](\d|\[("([^"]|\\")+?"|([^\]]|\\]+?)+?\])?','')
_text = REPLACE(_text,'\\','\')
_text
}
説明¶
- 引数として文字列を受け取り、SAKURAスクリプトタグを除去した文字列を返す
- 基本版は「かなりざっくりした」実装と作者が注記している
- ネガティブ後読みアサーション
(?<!\\)を使うことで、エスケープされたタグ(\\で始まるもの)を除去対象から外せる
関連項目¶
- Tips/SAKURAスクリプトタグをエスケープする
- マニュアル/関数/RE_REPLACE