IF (そして、太字、イタリック体、大文字のIF<tag1>...</tag>
) 各タグが 1 行に表示され、同じ行に他のコンテンツがないことを保証でき.
編集- いくつかのバグを修正し、実際に動作するようになりました:-)
@echo off
for %%F in (*.txt) do (
echo processing %%F
findstr /rc:"^ *<tag1>.*</tag1> *$" "%%F" >"%%~nF.tag1%%~xF"
findstr /rvc:"^ *<tag1>.*</tag1> *$" "%%F" >"%%~nF.new%%~xF"
>nul move /y "%%~nF.new%%~xF" "%%F"
)
このソリューションは、タグ属性をかなり簡単に処理できるように拡張できます。
しかし、私はあなたの問題が本当にそれほど単純であることを真剣に疑っています. 有効な HTML コンテンツには、複数の行にまたがるタグを含めることができます。また、1 つの行に複数のタグを含めることができます。
Windows のネイティブ バッチは、一般的にテキスト処理がかなりお粗末で、HTML や XML ではさらにひどいものです。gnu sed for Windows のような堅牢なテキスト処理を備えたサードパーティ ツールを入手することを強くお勧めします。または、HTML を処理するために特別に設計されたツールを入手してください。