[ 掲示板に戻る ]

記事No.8379に関するスレッドです

右インデントタブの置換について / 案山子
お世話になっております。
ExtendScriptで構文を書くとして
右インデントタブを追加したい場合、
どのように指定したらよいのでしょうか?
+"~y"あたりでやって見たのですが、どうも違うようです。
お分かりでしたら、お願い致します。

No.8371 2014/09/16(Tue) 07:14:06
Mozilla/5.0 (Windows NT 6.1; WOW64; rv:32.0) Gecko/20100101 Firefox/32.0

Re: 右インデントタブの置換について / 案山子
大事なことを忘れておりました。CS6使用です。
No.8372 2014/09/16(Tue) 07:16:50
Mozilla/5.0 (Windows NT 6.1; WOW64; rv:32.0) Gecko/20100101 Firefox/32.0

Re: 右インデントタブの置換について / 流星光輝 URL
右インデントタブをScriptで入力したいということですよね。
app.selection[0].contents='●\u0008●';
みたいにUnicode値を直接記入すれば良いと思います。

No.8373 2014/09/16(Tue) 09:57:29
Mozilla/5.0 (Windows NT 6.1) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/37.0.2062.120 Safari/537.36

Re: 右インデントタブの置換について / 案山子
ありがとうございます。
望み通りの結果を得ることが出来ました。

No.8376 2014/09/16(Tue) 16:03:27
Mozilla/5.0 (Windows NT 6.1; WOW64; rv:32.0) Gecko/20100101 Firefox/32.0

Re: 右インデントタブの置換について / 案山子
調べ直してみたところ、JavaScriptのUnicodeエスケープ文字の一覧には、
バックスペース \u0008、タブ \u0009とあります。
私の発想では、バックスペース=右インデントタブに結びつける事は不可能でしたが、
右インデントタブ=\u0008というのは、どこかに資料があるのでしょうか?

それと、追加で申し訳ないのですが、入力のない空白は指定可能でしょうか?
例)あああ(タブ)いいい(タブ)<空白>(タブ)えええ
この空白をJavaScriptで指定し、●で埋めたい場合、
if(配列[2]=""){処理};とかでは上手くいかないようです。
Excel側で処理していますが、JavaScript側で処理する方法がお分かりでしたら、宜しくお願い致します。

No.8377 2014/09/17(Wed) 08:04:13
Mozilla/5.0 (Windows NT 6.1; WOW64; rv:32.0) Gecko/20100101 Firefox/32.0

Re: 右インデントタブの置換について / 流星光輝 URL
>右インデントタブ=\u0008というのは、どこかに資料があるのでしょうか?

画像添付します。私は情報パネルで値を得ています。


>if(配列[2]=""){処理};とかでは上手くいかないようです。

比較演算子は合っていますか?

単純に
var hoge="あああ(タブ)いいい(タブ)<空白>(タブ)えええ"
hoge.replace(/\t\t/g, '●');
とかではダメなんでしょうか。

No.8378 2014/09/17(Wed) 09:21:09
Mozilla/5.0 (Windows NT 6.1) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/37.0.2062.120 Safari/537.36

Re: 右インデントタブの置換について / 案山子
情報パレットの値の件、とても参考になりました。
思いつかなかったです。ありがとうございました。

空白の件は、例えば、未入力項目のあるExcelの表をコピー後の処理を前提にしています。
""で空白(未入力)が選択出来ないのは、こちらの使い方が誤っているようですので
もう少し、調べてみます。あ、条件式=少ないですね。書き間違えました。
お教え頂いた hoge.replace(/\t\t/,"\t●\t");試してみました。
ただ、前後にタブがない行頭と行末は、置換出来ないようです。
Excel側の検索と置換ですぐに出来ることなので、何とかなるのですが、
Excelファイルを読む込む自動処理の場合、
どうやっているのかと思い質問させて頂きました。
添付画像の上が下に置換したいと思っております。

No.8379 2014/09/17(Wed) 18:12:04
Mozilla/5.0 (Windows NT 6.1; WOW64; rv:32.0) Gecko/20100101 Firefox/32.0

Re: 右インデントタブの置換について / 流星光輝 URL
書いてみました。(データ部分が長くて見づらいと思います。ごめんなさい。


#target indesign
// InDesignでtextFrameを1つ選択してから実行
var a="あああ\tいいいい\tうううう\t\t\r\tいいいい\tうううう\tえええ\tおおお\rあああ\t\t\tえええ\tおおお\r\tいいいい\tうううう\tえええ\tおおお\rあああ\tいいいい\t\t\tおおお\r\t\tうううう\tえええ\tおおお";
while (new RegExp("\t\t").test(a)){
a=a.replace(/\t\t/gm,"\t●\t");
}
var a=a.replace(/^\t/gm,"●\t").replace(/\t$/gm,"\t●");
app.selection[0].parentStory.contents=a;


※敢えて「表になるペーストをしない」と解釈しました。
実際にInDesign上に文字列としてコピペした後のデータで処理するなら書き換えて下さい。

No.8380 2014/09/18(Thu) 02:44:17
Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/37.0.2062.120 Safari/537.36

Re: 右インデントタブの置換について / 案山子
お世話になります。お手数をお掛けしました。
スクリプトさくっと動いてくれましたが、やはり簡単にはいかないん事なんですね。
Excelはセルベースだからその辺の違いなのかもしれませんね。参考になりました。感謝申し上げます。

No.8381 2014/09/19(Fri) 09:22:23
Mozilla/5.0 (Windows NT 6.1; WOW64; rv:32.0) Gecko/20100101 Firefox/32.0