「Ruby」の版間の差分

提供: sha.ngri.la
移動先: 案内検索
(nilの判定)
 
(同じ利用者による、間の8版が非表示)
1行目: 1行目:
==MySQLを使う==
+
==XMLを操作する==
 +
===REXML===
 +
*[http://d.hatena.ne.jp/aoi_273/20090311/1236764850 XML処理 REXMLの使い方 - プログラムメモ]
 +
==open-uri==
 +
 
 +
==gsub==
 +
<pre>str.gsub(pattern, replacement)</pre>
 +
<code>str</code>の文字列のうち、<code>pattern</code>の正規表現にマッチする文字列を<code>replacement</code>に置き換えます。
 +
===Link===
 +
*[http://ref.xaio.jp/ruby/classes/string/gsub gsub, gsub! (String) - Rubyリファレンス]
 +
==nilの判定==
 +
<code>.nil?</code>を使う。
 
<pre>
 
<pre>
$ gem install mysql
+
a = nil
 +
if a.nil?
 +
p "aはnil"
 +
else
 +
p "aはnilじゃない"
 +
end
 
</pre>
 
</pre>
 +
*[http://blog.goo.ne.jp/korokoro-2/e/16ea24b29d076e786ddd8cf9e7f2bbde 【Ruby】 nil の判定 - ぽっくるのITざっき]
  
<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>
+
<pre>
<tr><td align="right">2</td><td>ofo abaa</td><td>abaa@***.com</td></tr>
+
require "date"
<tr><td align="right">3</td><td>oof aab</td><td>aab@***.net</td></tr>
 
</table>
 
  
 
+
today = Date.today
fooo.rb
+
p today
 +
p today.strftime("%Y年 %m月 %d日")
 +
</pre>
 +
結果
 
<pre>
 
<pre>
require 'mysql'
+
#<Date: 2015-04-26 ((2457139j,0s,0n),+0s,2299161j)>
 
+
"2015-04-26"
begin
+
"2015年 04月 26日"
  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>
 
</pre>
  
===文字コードについて===
+
[[Category:Ruby]]
データベースから読みだしたコード(上の例だと、id,nam,email)は、文字コードがASCII-8BITになっているので、<code>nam.force_encode("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を操作する==
 
===REXML===
 
*[http://d.hatena.ne.jp/aoi_273/20090311/1236764850 XML処理 REXMLの使い方 - プログラムメモ]
 
==open-uri==
 

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日"