Skip to main content
  • 6,384 Posts
  • 12,193 Replies
6384 Posts
スクリプトで、最後から二つ目の文字列が置き換えされない

お世話になります。 Aiの開いているファイル全てで一気に特定の文字を置き換えしたいと思い、ネット上にあるスクリプトを切り貼りして作成しているのですが、うまく行きません。 ぱっと見、上手くいっているようなのですが、最後から2つ目の文字列に当たるものだけが置き換えされません。どうすれば、すべて置き換わるのでしょうか? 1つめ あああああ2つめ ああああ ←この文字列すべてが置き換わらない3つめ あああああ  if (app.documents.length > 0) { //開いているファイルすべてを選択while (app.documents.length > 0){var mydocument = app.activeDocument; //現在の一番前にあるファイル// 置き換えの文字var data = {src:"あかさたな", dst:"あいうえお"};//テキスト一時保管var targetObj = []; //文字を格納しておくところ// ドキュメント内からテキストのみを取り出すvar docObj = activeDocument; //エディタで現在表示されているドキュメントを参照するときに使いますfor(var i=0; i<docObj.pageItems.length; i++){typ = docObj.pageItems[i].typename;if (typ != "TextFrame") continue; // テキスト以外は無視targetObj.push(docObj.pageItems[i]); // 対象を格納// テキストの該当文字を置換for(var i=0; i<targetObj.length; i++){var regsrc=new RegExp(data.src, "gm");targetObj[i].contents = targetObj[i].contents.replace(regSrc, data.dst);}}app.activeDocument.save()//ファイルを保存app.activeDocument.close()//ファイルを閉じる}}// 処理終了を告げるalert(" 終わったよー!");