テキスト整形  home 
     .    ..     .    ..     .    ..     .    ..
 半角文字数    改行する       改行を取る 行末重視    文字数に注目    ¶に注目 
 改行を取る 段落重視 
 改行位置に¶を置く     ¶旗part2    ¶を削除 
 文字列 A 
 文字列 B 
 AとBに挟まれた範囲を削除する 
 AをBで置き換える     半角→全角   全角→半角 
 Aを削除する    《〜》[〜]|を削除       縦 書 き  
 行頭に<br>を挿入    行末に<br>を挿入    <br>を削除    Aを行頭、行末に挿入    数字のみの行を削除 
 逆順 行単位     逆順 文字列Aで分割    空行を挿入    空行を削除    行数と文字数 
 行をシャッフル    行番号を付ける    行番号を削除    行頭一字削除     load      save  
 行頭行末のスペース削除    半角Spc→|   |→Spc    全角Spc→□   □→Spc    半角Spc→全   全角Spc→半 
  元に戻す      計算      時間計算  
A → B    16→10     10→16     10→2   元号    ▽   カレンダー   △ 







  • 改行処理の基本ルールとして、行末が 。..??))」』で終わっている行を必要な改行とみなします。行末が読点の場合もその次の行が鈎括弧で始まっていれば必要な改行とみなします。
    整形改行するときも、このルールに拠ります。
  • 「段落重視」では、上のルールに加重して、次の行がインデント(字下げ)で始まっている場合、鈎括弧で始まっている場合だけを必要な改行とみなします。
  • 「文字数に注目」では、基本ルールのほかに、文字数の最も多い行と比較して、それより4文字短い行は、句読点がなくても必要な改行とみなします。このルールでも旗を立てられます。旗part2。
  • 「¶」は必要な改行位置を明示的に示すための旗として使っています。処理する前に旗を立てておけば、その行の改行位置が保持されます。全角のアンダーバー_も有効です。
    ¶は「パラグラフ」で変換できると思います。
    「旗¶に注目」は行末に¶のある場合だけを必要な改行とみなし、それ以外の改行を削除します。
  • 「>」で始まる行は引用行とみなして、その行は処理の対象から除外します。また、行末に旗¶¶を2本立てた場合も処理の対象から除外します。行頭の > は次に来る改行ーコードまでの1行だけが対象ですが、行末の¶¶2本は、折り返しのための便宜上の改行は無視して、段落としてのブロック、本来あるべき形での1行を対象とします。
  • 「《〜》[〜]|を削除」は青空文庫などをテキストエディタで読むときに便利かも。
  • 「逆順 文字列Aで分割」はAに入力された文字列を目印にして分割し、ブロック単位で逆順に整除します。目印の直後には改行が必要です。文章の中に目印の文字列が紛れ込んでいても、そこで分割することがないように改行とセットで目印として認識するようにしています。目印の前はチェックしていませんが、ま、目印は単独の行にしておいたほうが分かりやすいだろうと思います。
    例えば、htmlタグの <p> でブロックに分かれている場合とか、<!-- koko --> などのコメントアウトタグを挿入したりとか、htmlに限らず、掲示板のログを逆順にする場合など、いろいろ使えるかと思います。
  • 「行番号」 : セパレータをAに入れてください。一般には、コロン、スペース、アンダーバーだろうと思います。Bに桁数として 3 を入力すると、001: 002: のように3桁表示になります。ただし、2桁か3桁だけです。削除のとき、「_#%/:; -」などはセパレータとして認識します。
  • スペースを□と|に置き換えるのは、とりあえず可視化しようと言うだけのことです。
  • 「縦書き」 :行間が指定できます。文字列Aに行数を入力してください。省略は 1 です。
    いまは縦書きのタグもあるし、フリーで PDF に変換するソフトもあるし、そもそもテキスト整形するよりは GIF 画像のほうが扱いやすいし、この縦書き処理はあまり実用的ではありません。でも、実行結果がちょいとダイナミックで、楽しめます。
    実用的ではないと言いながら、短歌のページを作ってみました。結構いいかも。
  • 「→半角」は全角英数字と記号を半角に変換します。「→全角」はその逆変換です。
     変換する記号  −><=.,+!”’;:^|/#$%&{[(_)]}@*?¥
     変換しない記号「」。、〜‐\‘《》『』など、及びスペース
    スペースは目で確認しにくいから別オーダーにしました。
  • 「元に戻す」は直前の処理を元に戻します。Undo と Redo の繰り返し。
  • 「数字のみの行削除」:文字通り、数字のみの行を削除します。また、01:23:12など、数字で始まり、アルファベット文字を含まず、数字で終わる行も削除します。行頭行末のスペースやタブなど空白文字は、無いものとみなします。
    映画のDVDから「SubRip」などを使って字幕を抽出したとき、そのテキストから番号と経過時間情報を取り除くときに使えると思います。映画で英語の勉強、いいかも。


おまけ
  • 「計算」:各行の合計を出します。
    各行の中では、四則演算のほか、三角関数、平方根、べき乗計算、余り計算(%記号)ができ、またどこにでもコメントを入れることが出来ます。(括弧)があれば(括弧内)を優先して計算します。
    「(りんご150円*7個+みかん500円)/3人」のような書き方も大丈夫です。
    コメントの中に数字を入れる必要がある場合は // 以降にしてください。// よりも右側の数字は無視します。=の右側も無視します。

    三角関数を角度で求めるときは@を付けます。180°を1とした角度割合もOKです(周期2のπrad)。サイン60°は sin@60 または sin(1/3) です。三角関数には必ず@か ( 括弧 ) を付けるようにしてください。sin() cos() tan() asin() acos() atan() の6つの関数が使えます。@は角度をπradに変換する関数のようなものです。

    「計算」だけを抽出した行計算 電卓のページでは、三角関数は基本的に角度で求めるようにしました。πラジアンの方に@を付けます。そのうちこちらも修正しようと思っています。

    逆関数の atan() などは角度を返します。atan(tan@60)=60 です。
    ラジアンと角度を相互に変換する関数 rad() と angle() も用意しました。rad(180)=3.1416、 angle(pi)=180、 rad(acos(cos@180)) = 3.1416、となります。

    べき乗計算は^を使って記述します。10のマイナス2乗は 10^-2=0.01 です。
    スマホでは ^ の入力が面倒なので、#で代用出来るようにしました。
    平方根は root2 のように記述。立方根(cube root)は croot です。
    四乗根以降はべき乗計算で求めることが出来ます。16の四乗根は 16#(1/4)=2 です。

    円周率は pi です。
    pi と( 括弧 )の前後に数値がある場合、乗算とみなします。root や三角関数の直前も同様です。この場合に限って、乗算記号 * は省略可能です。例として、 2pi3#2、3root2、5((6+7)cos(1/3)+8)、のような記述もOKです。スペースを入れてもいいです。

    三角関数と平方根、べき乗計算は、小数点以下7桁までの計算です。それ以外は、円周率も含めて、JavaScriptの精度のままで計算します。但し、結果として表示するのは小数点以下4桁までです。
    計算可能な最大数値は10兆-1です。超えられません。超えても超えても、10兆-1です。
    演算符号の不整合などによって計算できない場合は、alertでお知らせします。

    行計算、スマホ用電卓のページに、演算記号や sin cos などの文字入力補助機能をつけました。キーボードを切り替えずに入力出来るようにはなったのですが、スマホ用電卓と言いながらも、やはり、まだまだ、スマホでは使いにくいかも。ハードウェアキーボードが欲しい。
  • 「計算」だけを抽出したページ、つくりました。スマホ用です。

  • 「時間計算」:各行の時間を計算して合計を出します。各行には、日:時:分:秒を記述してください。日:時:分は省略できます。秒は必須です。(「 分:秒 」を「 時:分 」と読み替えて計算することは、当然、可能です。)セパレータには : の他に # , . ; が使えます。
    引き算をする場合は、とりあえず行頭にマイナス符号をつけてください。5時間30分を減算するには、-5:30:0 と記述します。
    1行の中で計算する場合は、それぞれの要素を括弧で括ってください。
    (23:45:15)-(13:35:45)+(15:30)のように記述します。

  • 「カレンダー」:文字列Aに 2007/9 のように年月を入力。区切り記号は / でなくても何でもいいです。寿永2年3月のように元号(年号)でも指定できます。全角文字の区切り記号としては「年」や「、,・」が使えます。入力を省略したときは今月の暦を表示します。
    カレンダーはユリウス暦(1600年以前)にも対応していますが、1582年10月の空白の10日間の表示については略式の対応になっています。正しい暦では10月4日(木)の翌日は10月15日(金)となって、21日目の日曜日が10月31日です。当然ですが、翌日11月1日は月曜日で、このあとは今日に至るまで、きっちり連続しています。
    ユリウス暦では単純に4年毎の閏年で、1年の長さは 365.25 となります。実際の太陽年は 365.2422 ですから、おおよそ128年に1日ずれが生じます。現在使われているグレゴリオ暦では、400年に97回(400/4 - 4 + 1)の閏年で、1年は 365.2425 日です。これでも3千年に1日ぐらいのずれは生じますが、3千年後、人間が生き延びていて、暦を修正してくれたら、うれしい。
    そう言う訳で、1582年10月に暦を10日進める修正がなされたのでした。
    ユリウス暦の閏年でエラーが出る問題、修正しました。ちょっと恥づかしいバグでした。
  • 「カレンダー」だけを抽出したページ、つくりました。スマホ用です。

  • 「16→10」:16進数を10進数に変換します。
  • 「10→2」:16進数から変換して2進数の文字列として扱う場合は、桁数に注意してください。文字列としては2進数4桁の 0001 であっても、ここは数値ですので、表示は 1 になります。当たり前のことを書いているようですが、私自身、16進数4桁の文字コードを変換して、あれ、計算が合わない、と慌てたのでした。笑い話です。
  • 「元号」:西暦年を元号年に変換します。文字列Aに入力がないときは元号一覧を表示します。
  • 「save load」:cookieで保存できるようにしました。保存できるのは漢字670字程度です。



 PageTop