記事閲覧

− 野ざらし言 −

5760 Re^12: N88-BASICのRENUMのようなマクロ

めざら 2025/04/07(Mon) 07:32 [5759]へのコメント
http://mezala.la.coocan.jp/
> どうやって判別するのか。これ、どんな方式でやろうと、ついて回る問題

何かマーキングしているんでしょうね。
あるいは,内部的には番号ではなくアドレスになっているのかも……って,いずれにしても数値である以上は同じ問題を内在しているわけだなぁ……。

飛び先番号の前に【必ず】スペースが配置されていれば,いや逆にそれを仕様とするなら出来るのではないかと思います。

例えば,空白類+番号のセットを,変換後は一旦,特定キャラクタ(列)+番号にしておいて,最後に特定キャラクタ(列)を空白に一括置換する……という感じ。

もちろん,その場合は,実行開始時に特定キャラクタ(列)が一切存在しないかどうかチェックする必要はありますが,比較的容易にできて,かつ実行条件としてもそれほどの障壁ではないと思います。自分ならそのようにします……と言うか,しばらく考えてみましたが,それ以外に(優劣はともかく)案が出てこない。

具体的には……
#56 "[\s\t]【旧行番号】" #m "※【新行番号】" #m "ay"
……のように1行単位で置換しておくと,空白類を前置しているのが前提なので,他の行番号のときは置換対象にはならず,

#56 "※\([0-9]+\)" #m " \1" #m "ay"
……という感じで最後にに全部スペースに戻す。(タブもスペースになるのは「仕様」)

滅多に使わない文字,キーボードから入力できる記号にそっくりな記号……例えば「♯」(#ではない),「♭」(bではない),「∃」(ヨではない……があまりに見分けがつかないけど)……などがよいのかな。

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

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

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

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

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


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

処理 記事No. 暗証キー