1 件の投稿を表示中 (合計 6 個)
  • 作成者
    投稿
  • #4300
    midu
    メンバー

    初めまして、miduと申します。
    初歩的な質問かもしれませんが、宜しくお願い致します。

    選択範囲内の行頭と行末に特定の文字列を挿入したいと思っています。具体的には、

    Test
    テスト2

    print “Testn;
    print “テスト2n;

    と言うように、print文に限らず、指定の文字列で文章を囲みたいと思っています。
    マクロで組もうと思ったのですが、巧く組めませんでした…
    解決方法ありましたら、どうぞ宜しくお願い致します。

    #4309
    snow
    参加者

    私はこういう場合は、マクロの記録で1行分の処理+下の行へ移動を覚えさせて、連続再生します。

    #4310
    ShuHei
    メンバー

    いろんなやり方ありますので一例ということで。

    test.jseeという名前で下記を保存してemeditorで実行してあげてください。

    prefix = prompt(“行頭に入れたいのを入力してください。”,””);
    suffix = prompt(“行末にいれたいのを入力してください。”,””);

    eols = document.selection.Text.match(/(rn|r|n)/);
    if(eols != null) {
    eol = eols[0];
    lines = document.selection.Text.split(eol);
    for(var n in lines) {
    lines[n] = prefix + lines[n] + suffix;
    }
    document.selection.Text = lines.join(eol);
    } else {
    document.selection.Text = prefix + document.selection.Text + suffix;
    }

    因みにマクロ使わずに正規表現でもお手軽に出来ますよー

    #4313
    midu
    メンバー

    snow 様

    マクロで出来るんですね。
    あまりプログラムには詳しくなかったので、自力では組めませんでした…精進致します。
    ありがとうございました!

    #4314
    midu
    メンバー

    ShuHei 様

    こちらの例で正常に動作しました。ありがとうございました!
    とても短い構文で動くんですね…勉強になりました。

    #4316
    snow
    参加者

    組むのではなくて、ツールバーにある赤い四角の記録ボタンで、記録するんです。
    マクロを書き出してくれるので、勉強もできます。

    余談ですが、Excelでもこれと同じことができます。

1 件の投稿を表示中 (合計 6 個)
  • このトピックに返信するにはログインしてください。