タグ

Rubyに関するsagarayaのブックマーク (244)

  • 【Ruby】半角/全角バリデータ~解説編【Rails】

    前回投稿した半角/全角バリデータの正規表現の中身を解説します。 前回は、rubyで使える半角/全角バリデータを紹介しました。 あのソースは突貫工事的に書いたものなので、実は自分でも仕組みを理解しないままでした。 ですが、「それじゃあいかん!」ってことで、1つずつ調べてみました。 以下、ソース再掲↓ KCODE = 'u' def self.hankaku?(str) return nil if str.nil? # 半角のみOKなので、全角が混ざっているとfalseが返る unless str.to_s =~ /^[ -~。-゚]*$/ return false end return true end def self.zenkaku?(str) return nil if str.nil? # 全角のみOKなので、半角が混ざっているとfalseが返る unless str.to_

  • rubyで半角のみ、全角のみを判定する正規表現 - YomuKaku Memo

    rubyで文字列が半角のみで構成されているか、あるいは全角のみなのかを判定する正規表現は以下のようになります。

  • 形態素解析器IgoのRuby版を作った - 猫背ミジンコ

    解析結果がほぼMeCab互換のJavaおよびCommon Lispで実装された形態素解析器IgoRuby版を作りました。 正確にはIgoのエンジン部分をRubyに移植しましたですけれども。 ソース ソースはGitHubに公開。 また、RubyGems.orgにgemを公開してあるので、インターネットに接続している環境ならRubyGemsでインストールできます。 インストール コマンドラインで下記を入力。$ gem install igo-rubyigo-rubyは、別途Igoと同じ解析用辞書ファイルが必要です。(igo-pythonと同じ方式。ただし、igo-pythonの方は辞書ファイルの生成機能も実装予定とのことです。) 解析用辞書ファイルの生成方法については、Igoのページを参照してください。 使い方 Igo::Taggerクラスのコンストラクタに辞書ファイルが入ったディレクトリを

    形態素解析器IgoのRuby版を作った - 猫背ミジンコ
  • igoの辞書を作って、igo-rubyで形態素解析 - 橋本詳解

    javaで実装された形態素解析エンジンのigorubyに移植されたのを使ってみた 最初から辞書がビルドされてるなら、pure rubyだからgemで一発でインストールできるから楽だな。 http://igo.sourceforge.jp/ http://kyow.cocolog-nifty.com/blog/2010/12/igoruby-9726.html https://github.com/kyow/igo-ruby まず辞書を作る。辞書生成のためにigo体が必要 igo-0.4.2.jarをsourceforgeからダウンロードしておく。 mecabの辞書をigoと同じディレクトリに展開する wget http://sourceforge.net/projects/mecab/files/mecab-ipadic/2.7.0-20070801/mecab-ipadic-2.7.

    igoの辞書を作って、igo-rubyで形態素解析 - 橋本詳解
    sagaraya
    sagaraya 2011/02/14
    逆に辞書をUTF-8にしてみたら、プログラムもUTF-8なのに文字化けした。辞書をEUC-JPにしたらちゃんと動いた。
  • rubygems update の罠 - kurainの壺

    centos 5.2のrubygemsをupdateしようと思ったらいろいろはまったので記録。 gem update --systemrubygems自信をupdateできるという仕組みがあったのだが、最近はそれだけではうまくいかない事があるようだ(エラーが出て止まったり、gem -v しても古いままだったり)。そんな時は $ sudo gem install rubygems-update $ sudo update_rubygems とやると良い。のだが、update_rubygems を実行すると、hoe の 2.3.0以上が必要だと怒られた。で、hoe の 2.3.0 を gem で入れようとすると、gem の 1.3.1以上が必要だという。現状のgemは1.2.0 ... で、バージョンを指定しないとrubygems-update のバージョンが1.3.5なのに気づいて、 $

    rubygems update の罠 - kurainの壺
  • No idea for life.: rubyで日本語の文字数を取得する

    rubyで日語の文字数を取得する Stringクラスのsizeやlengthメソッドはbyte数を返すため、  日語が含まれるStringオブジェクトに対して実行すると、 文字数と違う値が返ります。 例えば下記の場合、日語が1文字に付き3byteで格納されているのがわかります。 print "あいうえおabcかきくけこ".size => 33 そのため、下記のようなコードは文字化けを起こす可能性があります。 # 先頭から5bye分取り出すが、"あい"は6byteで格納されているので文字化けする。 print "あいうえおabcかきくけこ"[0, 5].to_s => あ? byte数ではなく、文字数としてカウントしたい場合はsplitを使い Arrayに変換します。 下記の場合、日語10文字と英字が3文字で13文字が取得できます。 print "あいうえおabcかきくけこ".spl

  • Rubyのmapメソッドの使い方 - Jewel-mmo開発日記

    Rubymapメソッドの使い方 (この記事はRuby Advent Calendar jp: 2010 : ATNDの6日目です。前日はokkezさんでした。) Rubyにはmapメソッドというたいへん便利なメソッドがあります。 配列aにはいくつかの文字列が入ってるとします。 a = ["a", "abc", "abcdef"] この文字列を次のように右寄せで表示したいとき、どう書けばいいでしょう。 a abc abcdef いろんなやり方がありそうすが、ここではmapメソッドを使った例を紹介すると同時に mapメソッドの使い方について詳しく解説します。 まずeachメソッドで書いてみる まずその前に。 mapメソッドを使った書き方を紹介する前により易しいeachメソッドを使って書いてみます。 a = ["a", "abc", "abcdef"] l = 6 a.each {|e| pu

  • はてなブログ | 無料ブログを作成しよう

    週報 2024/04/28 川はただ流れている 4/20(土) 初期値依存性 さいきん土曜日は寝てばかり。平日で何か消耗しているらしい。やったことと言えば庭いじりと読書くらい。 ベランダの大改造をした。 サンドイッチ 一年前に引っ越してからこんな配置だったのだけど、さいきん鉢を増やしたら洗濯担当大臣の氏…

    はてなブログ | 無料ブログを作成しよう
  • SassでCSSの弱点を克服しよう (1/2)- @IT

    maedana SonicGarden SUG(SKIP User Group)/日Hamlの会 2009/5/22 Railsを使ったWebアプリケーション開発で、プログラマやデザイナを悩ませるものの1つがスタイルシートの記述だろう。Sassを使って、“クールで構造化された”スタイルシートを記述してみよう(編集部) Sassとは、Syntactically Awesome StyleSheetsの頭文字を取ったものです。あえて日語に訳すと、「かっこいい構文のスタイルシート」といった感じでしょうか。 もう少しシンプルに表現すると「クールなCSS(Cascading Style Sheets)」でもいいかもしれません。Sassはスタイルシートを簡潔に表現するためのメタ言語であり、同時にSassからCSSを生成するための便利なライブラリやコマンドラインツールを提供します。 Sassを使うと

  • Sinatra で静的ファイル - ヽ( ・∀・)ノくまくまー - s21g

    1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31

  • はてなグループの終了日を2020年1月31日(金)に決定しました - はてなの告知

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

    はてなグループの終了日を2020年1月31日(金)に決定しました - はてなの告知
  • tips : tips/02.プログラミングなど/Ruby/Rubyめも.txt

    全般 文の区切りに ; は不要 真偽値 false : nil, false: true  : それ以外(0も1もtrue) → なので、 "abcdef".index("abc") は 0   なので true "abcdef".index("bcd") は 1   なので true "abcdef".index("ccc") は nil なので false print, puts, p, pp print : 文字列表示 puts  : print + 改行 p     : オブジェクトの内容を表示(数値と文字列の区別が付く) +改行 改行やタブなどの文字をそのまま(\n, \t と)表示する pp    : 見やすい形式に (require 'pp' しとく必要あり) ※ PHPでいう var_dumpみたいな gets ファイルから1行ずつ取

  • Ruby/MD5関数でハッシュ値生成 - 俺の基地

    ハッシュ値生成 1.8.6です。 require 'digest/md5' hoge = Digest::MD5.new.update('hoge'); puts hoge ちなみに「hoge」のMD5変換後は ea703e7aa1efda0064eaa507d9e8ab7e になります。 ▲ ▼

  • 第26回 RMagickを用いた画像処理(1)リサイズ | gihyo.jp

    rubyで画像処理をする場合には、RMagickが使われます。今回はその中でもウェブアプリケーションを作る上で使用頻度が高いであろう、リサイズのやり方についてご紹介します。 はじめに 稿で紹介するすべてのサンプルコードは、事前に以下のコードを実行している前提で記述しています。また、破壊メソッドと非破壊メソッドの両方があるメソッドについては、サンプルコードでは特段の理由がない限り破壊メソッドを利用しています。 require 'rubygems' require 'rmagick' scale = 0.3 width = 160 height= 160 サンプル画像は以下を用います。 図1 original.png ※この画像は、「⁠フリー素材屋Hoshino」の素材を使用させていただきました。 画像ファイルの読み込み RMagickで画像ファイルの読み込みを行う場合は、以下のようにrea

    第26回 RMagickを用いた画像処理(1)リサイズ | gihyo.jp
  • RMagick の htmlhelp 作りました - 2nd life (移転しました)

    http://rails2u.com/htmlhelp/rmagick.zip RMagick は画像作成/加工にかなり充実した api をそろえており、かつ公式でドキュメントをきちんと提供してくれてすばらしいのですが、ドキュメントのメソッド一覧が見れなかったり、同じ class のインスタンスメソッドなのに数ページに分かれていたりするため、目的のメソッド/機能を探すのに数分、下手するともっとかかったりもします。 最近仕事やら趣味やらで RMagick を多用してきてるので、そもそもドキュメントの検索効率を上げないときついかなぁ、と思い始めてきたので htmlhelp を作りました。昔から作っておけば良かった…><。 RMagick のドキュメントはよくある rdoc 形式じゃない*1ので作るのに苦戦…、するかと思いきや、舞波が作ってくれた String#scrapi でさくさくと ind

    RMagick の htmlhelp 作りました - 2nd life (移転しました)
  • https://www.func09.com/wordpress/archives/764

  • 第41回 Sinatra 1.0の世界にようこそ | gihyo.jp

    はじめに SinatraはRubyで記述されたWebアプリケーションを素早く、簡単につくるためのDSL(ドメイン固有言語)です。 すでに第7回で、原悠さんにより「小規模Webアプリのためのフレームワーク、Sinatra」というかたちで紹介されています。 簡潔な文法で、高い表現力を持つSinatraは、アメリカRubyコミュニティや企業を中心に、瞬く間にユーザを増やしました。また、Rubyという一言語に留まらず[1]⁠、Sinatraを模したフレームワークが多く作られている現状からも、SinatraはWebアプリケーション開発そのものにも大きな影響を与えたと言えます。 最近ではここ日でも、個人利用を中心に、そこかしこでSinatraを使って開発をしている、という話を聞くようになりました。筆者自身、1ユーザとして現在業務で利用しており、1年前は知る人ぞ知る存在だったSinatraは、実際に

    第41回 Sinatra 1.0の世界にようこそ | gihyo.jp
  • text.ssig33.com - このサイトを Sinatra で書き直した。

    このサイトを Sinatra で書き直した。 もともと Rails で書かれていたのだが、この規模のサイトに使うには Rails はいかにも重量級すぎるので。 Sinatra ならば 1 ファイルで完結する。 Sinatra で開発する時に、 O/R マッピングには Sequel とか DataMapper とかが使われることが多い印象があるのだが、今回は ActiveRecord3 を使ってみた。 ActiveRecord3 はメソッドチェインでクエリを組み立てることが出来て非常に便利だし、 Rails3 でこのサイトを作った時のコードを使い回せる。 従来では「Rails を使わない理由」の中で最も大きなものに「ActiveRecord と密接に接合しており他の DBI を使いたくても使えない」というものがあったと思うが(つまりそれだけクソだった)、 ActiveRecord3 は Ru

  • はてなグループの終了日を2020年1月31日(金)に決定しました - はてなの告知

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

    はてなグループの終了日を2020年1月31日(金)に決定しました - はてなの告知
  • CSVと文字コード変換 - littlestarlingの日記

    サーバの環境をUTF-8にしたとして、クライアントはShift-JISでCSVをやり とりしたい場合がある。 というわけで試してみました。現状は以下の通り SJIS-UTF変換は基OK CSVデータにカンマ込み、ダブルクォート込みのデータがあっても標準ライブラリでパース出来る パフォーマンスが悪いという話が多い。テスト次第で他の方法を検討か? 文字コード変換もCSVパースも標準のライブラリを使用します。 NKFライブラリ CSVライブラリ SJISのCSVファイルをパースしてサーバコンソールに表示するサンプルスクリプト require "csv" require "nkf" open("test.csv").each {|line| CSV.parse(line).each{|row| puts NKF::nkf("-w", row.to_s) #-wでUTF-8に変換、Shift-JI

    CSVと文字コード変換 - littlestarlingの日記