JavaScriptで記号の半角と全角を相互に変換

JavaScriptで記号を半角から全角に変換するには英数字と同様にコードを65248(16進で0xFEE0)だけずらせばよいです。これは「JavaScriptで全角英数字を半角に変換」で紹介しました。
例えば「!」のコードは33(0x0020)なので65248ずらすと65281(0xFF01)で「!」となります。
ほとんどの記号がこのパターンです。

しかし一部、あてはまらないものがあります。
「\」は92(0x005C)ですが65248ずらすと65340(0xFF3C)で「\」になります。これは元がバックスラッシュなので日本語だと無理です。「¥」にしたいところです。
また「"」「'」は「"」「'」になってしまいます。「”」「’」にしたいところです。
句読点やカギ括弧など日本語特有の記号についてはまったく合いません。
そこで一つずつ置換する方法を考えました。 (さらに…)

文章から「俳句」を見つける「五七五検索機」

ちょっと前にウィキペディアから短歌と同じく五七五七七になっている箇所を探し出してツイートするという仕組みがあったかと思います。
これは形態素解析APIを使えばできるかも、と思い、自分でも実験的に作ってみました。 (さらに…)

新暦と旧暦を相互に変換する「新暦旧暦変換」

西暦年月日を8桁で入力すると、それを旧暦から新暦に、新暦から旧暦に変換するツールを作りました。

新暦旧暦変換

JavaScriptでPHPのmb_convert_kanaを再現

PHPにはmb_convert_kanaという関数があります。英字、数字、ひらがな、カタカナの半角と全角を相互に変換することができます。ひらがなとカタカナの変換もできます。

PHP: mb_convert_kana - Manual

これをJavaScriptで再現してみました。オプションはPHPと全く同じです。
前に「JavaScriptで全角英数字を半角に変換」という記事を書きましたが、一部、これを流用しています。 (さらに…)

PHPのタイムスタンプとMySQLの日時を相互に変換

PHPは日時をタイムスタンプで管理しています。これは1970年1月1日からの通算秒数です。
MySQLで日時(datetime型)を扱う場合は「2014-01-02 03:04:05」のようにします。
これらについては相互に変換することが多いので次の通りまとめておきます。

function datetime2timestamp($datetime){
  //PHPのタイムスタンプをMySQLのdatetime型に変換。
  $re = "/(\d+)-(\d+)-(\d+) (\d+):(\d+):(\d+)/";
  if(preg_match($re, $datetime, $m)){
    return mktime($m[4], $m[5], $m[6], $m[2], $m[3], $m[1]);
  }
}
function timestamp2datetime($timestamp){
  //MySQLのdatetime型をPHPのタイムスタンプに変換。
  return date("Y-m-d H:i:s", $timestamp);
}

Excelの表をHTMLのtableに変換するマクロ

HTMLで表を作るにはtableタグを使いますが、結構、面倒です。
Excelで表を作り、HTMLとして保存することができますが、余計なタグが満載です。
Excelの表から必要最小限のHTML(tableタグ)に変換するマクロを作ってみました。 (さらに…)

姓名判断などに使える「漢字画数一括検索」

氏名など漢字文字列について文字毎の画数を求めるツールを作りました。

漢字画数一括検索

ウェブ上で日付の形式を変換する「Date Converter」

日付の形式には「2014-11-13」や「平成26年1月2日」など様々なパターンがあります。これを任意の形式に変換するツールを作りました。

Date Converter

Excelでもできることですが、それをウェブ上で簡単にできるように、と考えました。

Date Converter

GoogleカレンダーからExcelにデータを移行する方法

GoogleカレンダーからエクスポートするとiCalendarファイル(iCal形式)というテキストデータになります。
例えば、千葉ロッテの今年の日程をエクスポートすると次のようになります。 (さらに…)

Excel方眼紙をWord文書に変換

パソコンで何らかの文書を作成するときにExcelとWordが使えるとします。
表を作成して集計したりする場合にはExcelを使います。
通常の文書、手紙や企画書、マニュアルなどを作成する場合にはWordを使います。
しかし、通常の文書を作成する際にもExcelを使う人がいます。
特に「Excel方眼紙」という手法があるそうで、全てのセルの高さと幅を揃え、ここに文字を入力していきます。
好きな位置に好きなように文字が入力できるのでパソコン初心者には便利な手法です。

しかし数ページに及ぶ長い文書はやはりWordを使った方が便利です。

  • 1ページあたりの行数や桁数を簡単に変えられる。
  • ページ番号が自動的に付けられる。
  • 見出しを正しく設定すると目次が自動的に作られる。

このようなメリットがあります。桁数が簡単に変えられるので他人の作った文書との結合も簡単です。これらはExcelではできない部分です。Wordは文書作成のソフトですのでメリットは他にもたくさんあります。
そこでExcelで作った文書をWord文書に変換する方法を考えます。

ExcelからWordに文字列をコピー&貼り付け

まずExcelの文をWordにコピーします。
Excelで文がセットされているセルを選択してコピーします。広めにコピーして構いません。
これをWordに貼り付けます。
普通に貼り付けると「表」として貼り付けられます。これはこれでいいのですが、Wordの文書作成ソフトとしての機能が使えません。「形式を選択して貼り付け」をします。

  1. メニューの クリップボード - 貼り付け - 形式を選択して貼り付け を選択します。
  2. 「形式を選択して貼り付け」ダイアログで「貼り付ける形式」として「テキスト」を選択します。

こうすると「表」ではなく「タブ区切り」で貼り付けられます。

Wordのタブを削除

このままでは編集しにくいのでタブ文字を削除します。

  1. メニューの ホーム - 編集 - 置換 を選択します。
  2. 「検索と置換」ダイアログの「置換」タブで「オプション>>」をクリックして「検索オプション」を表示します。
  3. 「ワイルドカードを使用する」のチェックを入れます。
  4. 「検索する文字列」に「^t」と入力します。「特殊文字▼」で「タブ文字」を選択してもいいです。
  5. 「置換後の文字列」には何も入力しません。
  6. 「すべて置換」をクリックします。

文書のタブ文字がすべて削除されます。

これで通常のWord文書として編集できるようになったと思います。
なお、図などは貼り付けられませんので、Excelからコピーします。
図は文字の折り返しを「行内」としておくとレイアウトが崩れにくいです。

  1. 図を選択して、メニューの 書式 - 配置 - 文字列の折り返し を選択。
  2. 「行内」を選択。
新しい記事 | 古い記事

タグ

カテゴリー

最近の投稿

最近のコメント

固定ページ

アーカイブ

stabucky

写真

メタ情報