「Ruby」の版間の差分

提供: sha.ngri.la
移動先: 案内検索
(gsub)
(nilの判定)
 
(同じ利用者による、間の3版が非表示)
1行目: 1行目:
==MySQLを使う==
 
<pre>
 
$ gem install mysql
 
</pre>
 
 
<table border=1>
 
<tr><th>id</th><th>name</th><th>email</th></tr>
 
<tr><td align="right">1</td><td>甲野太郎</td><td>baa@***.com</td></tr>
 
<tr><td align="right">2</td><td>ofo abaa</td><td>abaa@***.com</td></tr>
 
<tr><td align="right">3</td><td>oof aab</td><td>aab@***.net</td></tr>
 
</table>
 
 
 
fooo.rb
 
<pre>
 
require 'mysql'
 
 
begin
 
  db = Mysql::connect('localhost','username','password','database')
 
  sql = "select * from tablename"
 
  rs = db.query sql
 
  rs.each do |columns|
 
    id = columns[0]
 
    nam = columns[2]
 
    email = columns[3]
 
  end
 
end
 
</pre>
 
 
===文字コードについて===
 
データベースから読みだしたコード(上の例だと、id,nam,email)は、文字コードがASCII-8BITになっているので、<code>nam.force_encoding("utf-8")</code>とかして、文字コードを変更しないと、文字列を操作したときに文字化けする。
 
 
 
*[http://www.ownway.info/Ruby/index.php?ruby-mysql%2Fabout ruby-mysql の使い方の簡単な説明 - 君の瞳はまるでルビー - Ruby 関連まとめサイト]
 
*[http://oboerutech.blog16.fc2.com/blog-entry-30.html 覚えるテクRubyからMySQLへの接続]
 
 
 
==XMLを操作する==
 
==XMLを操作する==
 
===REXML===
 
===REXML===
45行目: 9行目:
 
===Link===
 
===Link===
 
*[http://ref.xaio.jp/ruby/classes/string/gsub gsub, gsub! (String) - Rubyリファレンス]
 
*[http://ref.xaio.jp/ruby/classes/string/gsub gsub, gsub! (String) - Rubyリファレンス]
 +
==nilの判定==
 +
<code>.nil?</code>を使う。
 +
<pre>
 +
a = nil
 +
if a.nil?
 +
p "aはnil"
 +
else
 +
p "aはnilじゃない"
 +
end
 +
</pre>
 +
*[http://blog.goo.ne.jp/korokoro-2/e/16ea24b29d076e786ddd8cf9e7f2bbde 【Ruby】 nil の判定 - ぽっくるのITざっき]
 +
 +
==日付==
 +
===日付をフォーマットした文字列に変換する。===
 +
<pre>
 +
require "date"
 +
 +
today = Date.today
 +
p today
 +
p today.strftime("%Y年 %m月 %d日")
 +
</pre>
 +
結果
 +
<pre>
 +
#<Date: 2015-04-26 ((2457139j,0s,0n),+0s,2299161j)>
 +
"2015-04-26"
 +
"2015年 04月 26日"
 +
</pre>
  
 
[[Category:Ruby]]
 
[[Category:Ruby]]

2015年4月25日 (土) 16:30時点における最新版

XMLを操作する

REXML

open-uri

gsub

str.gsub(pattern, replacement)

strの文字列のうち、patternの正規表現にマッチする文字列をreplacementに置き換えます。

Link

nilの判定

.nil?を使う。

a = nil
if a.nil?
 p "aはnil"
else
 p "aはnilじゃない"
end

日付

日付をフォーマットした文字列に変換する。

require "date"

today = Date.today
p today
p today.strftime("%Y年 %m月 %d日")

結果

#<Date: 2015-04-26 ((2457139j,0s,0n),+0s,2299161j)>
"2015-04-26"
"2015年 04月 26日"