タグ

Unicodeに関するseamlessbiasのブックマーク (37)

  • 全角半角混在の文章で 1 行に半角何文字分あるか調べる方法

    「ソースコードは 1 行あたり 80 文字以内」とか「コミットログは横幅 72 文字以内」とか、文字数に関するルールはいろいろある。 ルールを徹底するには機械的に判定したい。と思って、簡単なスクリプトを書こうとした瞬間、意外と「1 行あたりの文字数」をカウントするのが難しいことに気付いた。 たとえば、「あA」は「全角 1 文字+半角 1 文字」なので半角 3 文字分としてカウントしたい。 しかし、UTF-8 の世界では「あA」の文字長は 2 だし、バイト数は 4 (あ=0xE38182、a=0x41) である。 EUC-JP や Shift-JIS の時代なら、単純に「あA」は 3 バイトなので「半角 3 つ分」とすぐ分かったのだけども… (逆に文字長を調べるのが面倒だった)。 はて、どうするか? というのがこの記事でいいたいこと。 East Asian Width を見よ いろいろとググ

    全角半角混在の文章で 1 行に半角何文字分あるか調べる方法
    seamlessbias
    seamlessbias 2014/03/14
    これ私も必要になって調べたことあるけどほんとめんどくさい……
  • StringInfoのSubstringByTextElementsがWindowsストアアプリでは使えない - かずきのBlog@hatena

    がりっちさんに4バイト文字の𩹉(とびうお)を送り付けて、がりっちさんが作ってるTwitterクライアントの文字列処理をばぐらせて遊んでいたら、𩹉(とびうお)問題という名前がつきました。 𩹉(とびうお)問題 - がりらぼ StringInfoクラス使えば便利メソッドあるから簡単じゃん?と思ったら WinRTでマルチバイト文字に対応する - がりらぼ SubstringByTextElementsという、今回のがりっちさんの中で重要なメソッドがなくなってたみたいです。自力実装されてたコードを見て自分だったら…というのを書いてみました。 public static class StringExtensions { /// <summary> /// 文字数を返す /// </summary> /// <param name="self">対象の文字列</param> /// <return

    StringInfoのSubstringByTextElementsがWindowsストアアプリでは使えない - かずきのBlog@hatena
  • EncodingクラスとBOMありなしの制御 - smdn.jp

    EncodingクラスとBOMありなしの制御を更新、標準ストリーム(Consoleクラス・Processクラス)におけるBOM出力の動作を追記

    EncodingクラスとBOMありなしの制御 - smdn.jp
  • 革命の日々! ハチクロはUnicodeの歴史を変えてしまったらしい

    togetterで「ISO/IEC JTC 1/SC 2/WG 2 ad hoc meetings: Emojiに関するTweets」がまとめられているようだ。 すばらしい。 → http://togetter.com/li/15979 と http://togetter.com/li/16108 一番面白かったのは「勝ち誇り」フェイス変更のくだりで この頭の左側のような「はぁ?なにこの鼻提灯」といった図面から 以下のような正しい鼻息に変更されたのだが そのときに使われた、日のマンガ文化の文脈で「勝ち誇り」がどのように抽象化されているのか という説明に使われたのが以下のコマだという 小形さんの多大なる貢献に経緯を表しつつ。そして同時に、森田先輩あなたって人は・・・・

  • Unicodeブロックを組み合わせて正規表現で使う - Practice of Programming

    Unicodeブロック使おうと思ってググってたら。 \p{InHalfwidthAndFullwidthForms} # 半角カナなど(※0-9とかA-Zにもマッチするみたい・・) http://blog.livedoor.jp/sasata299/archives/51194035.html あら、そうなんだ。 perldoc unicodeを読み直すと、Unicodeブロックを組み合わせてユーザー定義の文字プロパティ(User-Defined Character Properties)を作れると書いてあった。In/Isから始まる次のような関数を定義する。 package Hoge; sub InHankakuKana { return <<'END'; +utf8::InHalfwidthAndFullwidthForms -utf8::N -utf8::Ll -utf8::Lu EN

    Unicodeブロックを組み合わせて正規表現で使う - Practice of Programming
  • Windows環境でUnicodeファイルを扱う - JPerl Advent Calendar 2009

    こんにちわ!クリスマスを過ぎるとニートになることが決まっている xaicron です! ハッカーでもなんでもないのですが、勢いに任せて登録してみました!!すいません>< はじめに 今日は、Windows環境以外の人は何にも関係ない、モジュール Win32::Unicode をご紹介しようとおもいます。 しかもまた文字コード関連の話ですね!!にEncodeでラクラク日語処理を読んでから詠むと、より理解が深まるかもしれません。 Win32::Unicodeって? Windowsperl を使う場合の選択肢としては ActivePerl と Strawberry Perl の二種類があげられます。 どちらも Windows 用にカスタマイズされたものなのですが、悲しいことにどちらの Perlを使っても Unicode 文字の含まれたファイルが扱えません。 でもそれだと悲しいので、Unic

  • Win32-Unicode

    A required part of this site couldn’t load. This may be due to a browser extension, network issues, or browser settings. Please check your connection, disable any ad blockers, or try using a different browser.

    seamlessbias
    seamlessbias 2009/12/22
    perl unicode-friendly wrapper for win32api.
  • perl - use utf8; #って何だ? : 404 Blog Not Found

    2009年06月15日07:00 カテゴリLightweight Languages perl - use utf8; #って何だ? id:otsuneに建設予定フラグがたてられていたので。 冬通りに消え行く制服ガールは、夢物語にリアルを求めない。 - subtech Perl の utf8 関係が未だ全く理解できない。わからないことがわからないので整理 use utf8はいつフラグをたてるか use utf8 しててもフラグたたないことがある…… これは、以下の実例を見ていただくのが一番よいだろう。 #!/usr/bin/perl use strict; use warnings; use utf8 (); sub check_flag{ my $str = shift; print qq("$str" ), utf8::is_utf8($str) ? 'is' : 'IS NOT',

    perl - use utf8; #って何だ? : 404 Blog Not Found
  • Client Challenge

    seamlessbias
    seamlessbias 2009/05/03
    East Asian Width properties
  • perluniadvice - daily dayflower

    perluniadvice の前半部分を訳してみました。かなり意訳。 アドバイスと銘うってますが,中級者〜上級者向きです*1。 抄訳 perluniadvice Perl 付属のドキュメント perlunitut はもう読んだ?もしまだなら,そこから読み始めること :) perlunitut - perldoc.perl.org perlunifaq - perldoc.perl.org 以下にわたし(http://juerd.nl/)からのアドバイスの要約を挙げる。perlunitut には記述しなかった内容も含んでいる。 もしあなたが古い Perl を使っているのなら,最新版にアップグレードしよう もしあなたが古い CPAN モジュールを使っているのなら,最新版にアップグレードしよう 「外界」からやってくるデータはすべて decode() しよう 「外界」へ出力するデータはすべて en

    perluniadvice - daily dayflower
  • 図解: Perl と Unicode 文字列 - daily dayflower

    id:tomi-ru さんが [http://e8y.net/mag/015-encode/:title] というとてもプラクティカルな [http://search.cpan.org/perldoc?Encode:title=Encode] 入門をお書きになったので,わたしも違う切り口で書いてみたくなりました。 いちおうの基礎(読み飛ばし可) 文字セット, キャラクタセット, 文字集合, 文字集合 - Wikipedia エンコーディング, 符号化方式, 文字符号化方式 - Wikipedia この2つは異なります。とくに知らなくても下記の文書を読むことはできますが,理解しているとためになります。くわしく知りたい人は自習してください。 文字セットの例 Unicode JIS X 0208 ひらがなとかカタカナとか漢字とか ASCII 文字 エンコーディングの例 UTF-8 ISO-202

    図解: Perl と Unicode 文字列 - daily dayflower
  • ウェブで利用される文字コード、UnicodeがASCIIを上回る--グーグルが明らかに

    UnicodeがASCIIを追い越し、World Wide Web上で最も多く利用されている文字コード体系になったとGoogleのシニアインターナショナルソフトウェアアーキテクトMark Davis氏がブログで述べている。また、UnicodeはASCIIだけでなく、Western Europeanもほぼ同時に追い越している。

    ウェブで利用される文字コード、UnicodeがASCIIを上回る--グーグルが明らかに
  • I, newbie » Catalyst::Manual::Tutorial::UTF8というのはどうか

    個人的に、日語というか非ASCII文字を扱う場合における(バッド)ノウハウのPODを作りかけてて、こういうものはいろんな人の手によって作って、みんなで共有すべきなんじゃないかと思い始めた。別にCatalyst::Manual::Cookbook::UTF8でもいい。Catalyst::Manual::Tutorial::Multibyteでもいいけど、いまどきUTF8以外をわざわざ採用する理由ってあまりないような(すくなくともPerlでは)気がする。別にCatalyst::という名前空間であるべき理由はないかもしれないけど、プログラマがi18nとかにまず直面するのはWebアプリなんじゃないかな。しかも、いろんな部分で知らなくてはいけないことが多いし。ここら辺のノウハウって、Perl使いの日人が得意としてそうだし。正直自分の経験から生まれたノウハウはないから、散乱してるblogのpost

    seamlessbias
    seamlessbias 2008/02/21
    私はいま困りそうになりつつあるところ。まとまってるとうれしいよね。
  • Journal of miyagawa (1653) - Three levels of Perl/Unicode understanding

    (Editorial: Don't frontpage this post, editors. I write it down here to summarize my thought, wanting to get feedbacks from my trusted readers and NOT flame wars or another giant thread of utf-8 flag woes)I can finally say I fully grok Unicode, UTF-8 flag and all that stuff in Perl just lately. Here are some analysis of how perl programmers understand Unicode and UTF-8 flag stuff.(This post might

  • UTF8 フラグあれこれ - daily dayflower

    UTF8 フラグについてわかってるつもりだったんですが,utf8::is_utf8 considered harmful - Bulknews::Subtech - subtech を読んで混乱したので,自分なりにまとめてみました。間違いがありましたらご指摘よろしく。 まとめ スカラー変数の内部表象の状態を示すものとして UTF8 フラグというものがある スカラー変数は(リファレンス等は別として)下記のものを格納できる (A) 文字列(内部表象: UTF-8) (B) 文字列(内部表象: ISO-8859-1) (C) バイナリ列 純粋なバイナリストリーム(画像ファイル等)かもしれないし, UTF-8 octet stream かもしれないし, CP932 octet stream かもしれないし,etc, etc ... Perl は(後方互換性確保などの理由から)ISO-8859-1

    UTF8 フラグあれこれ - daily dayflower
  • utf8::is_utf8 considered harmful - Bulknews::Subtech - subtech

    はてなグループの終了日を2020年1月31日(金)に決定しました 以下のエントリの通り、今年末を目処にはてなグループを終了予定である旨をお知らせしておりました。 2019年末を目処に、はてなグループの提供を終了する予定です - はてなグループ日記 このたび、正式に終了日を決定いたしましたので、以下の通りご確認ください。 終了日: 2020年1月31日(金) エクスポート希望申請期限:2020年1月31日(金) 終了日以降は、はてなグループの閲覧および投稿は行えません。日記のエクスポートが必要な方は以下の記事にしたがって手続きをしてください。 はてなグループに投稿された日記データのエクスポートについて - はてなグループ日記 ご利用のみなさまにはご迷惑をおかけいたしますが、どうぞよろしくお願いいたします。 2020-06-25 追記 はてなグループ日記のエクスポートデータは2020年2月28

    utf8::is_utf8 considered harmful - Bulknews::Subtech - subtech
  • はてなグループの終了日を2020年1月31日(金)に決定しました - はてなの告知

    はてなグループの終了日を2020年1月31日(金)に決定しました 以下のエントリの通り、今年末を目処にはてなグループを終了予定である旨をお知らせしておりました。 2019年末を目処に、はてなグループの提供を終了する予定です - はてなグループ日記 このたび、正式に終了日を決定いたしましたので、以下の通りご確認ください。 終了日: 2020年1月31日(金) エクスポート希望申請期限:2020年1月31日(金) 終了日以降は、はてなグループの閲覧および投稿は行えません。日記のエクスポートが必要な方は以下の記事にしたがって手続きをしてください。 はてなグループに投稿された日記データのエクスポートについて - はてなグループ日記 ご利用のみなさまにはご迷惑をおかけいたしますが、どうぞよろしくお願いいたします。 2020-06-25 追記 はてなグループ日記のエクスポートデータは2020年2月28

    はてなグループの終了日を2020年1月31日(金)に決定しました - はてなの告知
  • Unicode に関する誤解の誤解 - odz buffer

    ref:Open ブログ: ◆ シフトJIS と unicode via:Matzにっき(2007-03-12) 初めにお断りしておくが、項は、誰かを批判することが目的ではない。素人にありがちな誤解を正すことにある。 上記のサイトで、素人が間違いを犯しているからといって、素人を批判するつもりは毛頭ない。素人が専門知識をもたないのは当然だからだ。私としては、批判するためというよりは、読者が他山の石として眺めるために、上記のサイトを見ることをお勧めする。 Encode.pm の maintainer である dankogai 氏を素人呼ばわりするのもなかなか勇気があると思うが、じゃ、そういう人の誤解を正しておこうか。 一方、 unicode には問題が山積みだ。だいたい、素人は unicode という言葉を使っているが、 unicode というものは一種類しかないわけではない。UTF-8

    Unicode に関する誤解の誤解 - odz buffer
  • シフトJISを残すべきか? : 404 Blog Not Found

    2007年03月10日23:30 カテゴリCode シフトJISを残すべきか? Matzさん経由で知ったのだが、これはひどい。 シフトJISを捨てられるか?:ITpro では,今までのデファクトだったシフトJISはどうだろうか。シフトJISを使うと,(英文混じりの)日語を表現する場合,そのデータ長はUTF-8/16/32に比べて短くなる。コンピュータを取り巻く通信環境は高速になり,ストレージは大容量化してきたとはいえ,データ長は短いに越したことはない。確かに、シフトJISで表現できるテキストをUTF-8で表現すると、最高で1.5倍になる(ただしここで言うシフトJISは、Shift_JISX0213は含まない)。しかし、テキストデータというのは圧縮率が高い。 未圧縮gzipbzip2 シフトJIS4,6822,2542,225 UTF-86,7672,5262,325 UTF-8/SJIS

    シフトJISを残すべきか? : 404 Blog Not Found
    seamlessbias
    seamlessbias 2007/03/12
    cp932は扱いづらいから全部utf-8になればいいのに。
  • UTF-PNG (aka Unicolor) : 404 Blog Not Found

    2007年03月11日03:00 カテゴリLightweight Languages UTF-PNG (aka Unicolor) たしかにこれは普通の奴らの上ですね。 404 Blog Not Found:シフトJISを残すべきか? - matzさんのコメント 新しいUnicode符号化方式 http://nowsmartsoft.or.tv/nws/Japanese/new_utf.htm にはしびれました。気で実装しているところがすばらしい。 こちらでは、普通の奴らの下を目指してみました。 名づけて、UTF-PNG。別名Unicolor Encoding. Perlによる実装は、 です。エンコーダーは 、デコーダーは です。コンパクトでしょ? Unicodeの全キャラクター一文字づつ載せると100万文字以上になりますが、それでもこれくらいに収まります。 そう。何のことはない、Uni

    UTF-PNG (aka Unicolor) : 404 Blog Not Found