<12>
<ab>
<cd>
<ef>
という文章があるのですが
それを
<12><ab>
<cd><ef>
というように<cd>の前だけ改行置換しないようにしたいのですが、どのようなコードを書けばいいでしょうか?
一括で 改行を置換してそのあとに <cd>の時だけの改行を入れて置換処理をしたらいかがでしょうか?
または 最初に 改行<cd>を 別のものに置換後、一括で改行置換してから
改行<cd>に戻すというのは どうでしょうか?
一例。
VBScript で a.txt を読み込んで b.txt に出力
Set objFSO = CreateObject("Scripting.FileSystemObject") Set objFile = objFSO.OpenTextFile("a.txt") oldText = objFile.ReadAll ' オブジェクトの準備とパラメータ設定 Set objRep = New RegExp objRep.Multiline = True objRep.Global = True ' 置換条件の設定と置換実行 objRep.Pattern = "(?!\r*\n<cd>)\r*\n" repText = "" newText = objRep.replace(oldText, repText) objFile.Close Set objFile = objFSO.CreateTextFile("b.txt") objFile.WriteLine (newText) objFile.Close
この条件以外を改行するというのはできないのでしょうか?
2013/03/12 15:18:48