記事閲覧

− 野ざらし言 −

5747 Re^6: N88-BASICのRENUMのようなマクロ

めざら 2025/04/05(Sat) 14:27 [5738]へのコメント
http://mezala.la.coocan.jp/
> 一旦,としきさんからの案を待ちます。

……と言いつつ,飛び先番号の抽出サンプルは作ってみました。

前段階の行番号整合性チェックを厳密にすれば16ビットの整数に収まる……
という想定でちょっと手抜きです。なお,この先に控えている番号置換で
200 を置換するつもりが 2000 の 200 部分だけ書き換えてしまうという
致命的なミスを犯さないためのテスト部品も組み込んであります。

= picknum.def = by H_ear
#if 0
Basic飛び先番号を別テキストに抽出
#endif
* mad for vz!
1 ^\ "" ?. &s
        (wc==tc)?{ &m(6) . }            ;オープン可能テキスト数確認
        mp[=2, ps[, RX[+,               ;検索モード,正規表現有効
        mi[-, Je[, Je|=512,             ;挿入,\w有効,自動字下げ無効
        #^ #<
        b=id,                           ;元ファイルid (b)
        #R "nul" #m (s)?'y'             ;作業ファイルをオープン
        a=id,                           ;新規ファイルのid (a)
 :L     ; ---- main loop ----
        &#T(-b)                         ;処理対象ファイル
        ps="[\s\t][0-9]+", #c           ;空白文字と数字列
        (r)?>z                          ;見つからなければ終了
        #d &n d=r,                      ;飛び先行番号 (d) の取得
        &#T(-a)                         ;新規ファイルに移動
        &?("%u",d) #m                   ;飛び先行番号の出力・保存
        >L
 :z     ; ---- exit ----
        Je], mi],
        RX], ps], mp],
        &d #] .
*

関連記事一覧ツリー (▼ を押すとツリー全体を一括表示します)

- 5731.N88-BASICのRENUMのようなマクロ - としき 25/03/29-14:22

返信フォーム (この記事に返信する場合は下記フォームから投稿して下さい)

おなまえ :
Eメール :
タイトル :
メッセージ: 通常モード(推奨)  整形モード(非推奨)  preモード(空白再現)
※ プログラムコード等を含まない場合は,できるだけ通常モードをご利用ください。

参照先 :
暗証キー: (英数字で8文字以内) プレビューなし


- 以下のフォームから自分の投稿記事を修正・削除することができます -

処理 記事No. 暗証キー