2019-10-01から1ヶ月間の記事一覧

includeとprependの違い

Module#ancestors というメソッドを使ってみる このメソッドはクラス、モジュールのスーパークラスとインクルードしているモジュール を優先順位順に配列に格納して返すメソッド https://docs.ruby-lang.org/ja/latest/method/Module/i/ancestors.html 使い…

moduleの組み込み前回のつずき

https://qiita.com/go8/items/db936ff7312ba7d97315#%E8%A4%87%E6%95%B0%E3%83%A2%E3%82%B8%E3%83%A5%E3%83%BC%E3%83%ABinclude%E7%B7%A8 このサイトを参考に試してみる moduleを組み込む前回の復習 ファイル名:practice_main.rb require './practice' requ…

moduleの組み込み

https://qiita.com/go8/items/db936ff7312ba7d97315#%E8%A4%87%E6%95%B0%E3%83%A2%E3%82%B8%E3%83%A5%E3%83%BC%E3%83%ABprepend%E7%B7%A8 このサイトを参考に試してみる moduleを組み込む ファイル名:practice_main.rb require './practice' require './pra…

クラス継承 オーバーライト

https://qiita.com/go8/items/db936ff7312ba7d97315 このサイトを参考に試してみる 前回のクラス継承の続き ファイル名:practice_main.rb require './practice' require './practice2' Practice2.lala Practice2.new.mama ファイル名:practice.rb class Ha…

ruby class継承

https://qiita.com/go8/items/db936ff7312ba7d97315 このサイトを参考に試してみる 先ほどの続き、次は継承を試してみる ファイル名:practice_main.rb require './practice' require './inheritance' Haha.lala Haha.new.mama ファイル名:practice.rb clas…

ruby class継承

https://qiita.com/go8/items/db936ff7312ba7d97315 このサイトを参考に試してみる 先ほどの続き、次は継承を試してみる ファイル名:practice_main.rb require './practice' require './inheritance' Haha.lala Haha.new.mama ファイル名:practice.rb clas…

requireメソッド

https://qiita.com/go8/items/db936ff7312ba7d97315 このサイトを参考に試してみる まずrequireから ファイル名:practice_class.rb class Haha class << self def lala puts "クラスタンスメソッド" end end def mama puts "インスタンスメソッド" end end …

class << selfについて 

https://magazine.rubyist.net/articles/0046/0046-SingletonClassForBeginners.html このサイトによると class << self と書いた行から end までの間に def class_method のようにクラス名を書かずにインスタンスメソッドと同じようなメソッド定義を書いて…

ruby クラスメソッドとインスタンスメソッド

https://qiita.com/hogeta_/items/27221675638cdc9bde6b この記事を参考にしてやってみる class Haha def lala puts "インスタンスメソッド" end def self.mama puts "これはクラスメソッド" end begin lala rescue puts "呼び出し失敗" end begin mama resc…

ruby beginとは

https://techacademy.jp/magazine/18769

とりあえず勉強しないといけないところ

まずrequireとincludeとextendについて https://qiita.com/go8/items/db936ff7312ba7d97315次に mixinについて https://qiita.com/k-sekido/items/6ad469df22ddadb75f87 そして ActiveSupport::Concernについて https://qiita.com/castaneai/items/6dc121ce6…

ruby joinメソッドとは

https://ref.xaio.jp/ruby/classes/array/join

!~をmatch?に変える

最近!~とか正規表現関連のことばっかりの記述をしている気がする とりあえずやらないといけないことは aa !~ /^abc/ の形をmacth?メソッドを使って書き直さなければならない puts aa.match?(/^[^abc]/) こういう風に書いてみた $ ruby practice.rb false fal…

ruby 正規表現 否定

以前 https://tetsu-1999.hatenablog.com/entry/2019/10/22/190237 この記事で正規表現の否定についての記事を書いたが、どうやらトンチンカンなことを書いていたようです。 https://www.javadrive.jp/rubyregexp/character/index3.html この記事に書いてあ…

%w()と%W()とは

%w()はrubyでスッキリしたコードで文字列の配列が作成するための記法です。 https://www.sejuku.net/blog/46939#w では%w()と%W()で具体的に何が違うのかというと %W()は()内で式展開することができます。 では具体的にどういうことかというと こうコードを…

%w()と%W()とは

%w()はrubyでスッキリしたコードで文字列の配列が作成するための記法です。 https://www.sejuku.net/blog/46939#w では%w()と%W()で具体的に何が違うのかというと %W()は()内で式展開することができます。 では具体的にどういうことかというと こうコードを…

Rubyでの正規表現の否定

正規表現の否定をしたいと思い調べてみたところ http://www-creators.com/archives/1827 このサイトがすぐにぶち当たった。 (?!PATTERN) を使うことによってPATTERNを含まないという意味を持つ正規表現が作れるらしい。 実際に試してみた aa = "abc333333" b…

aa ? aa : nil と aa||nil の違い

rubocopでaa ? aa : nilのところを || に直せと言われた どう一緒になるのか試してみた 書いたコード aa = "aa" bb = "" cc = nil dd = false puts aa.nil? puts bb.nil? puts cc.nil? puts dd.nil? puts aa ? aa : nil puts bb ? bb : nil puts cc ? cc : n…

Rubyでの正規表現の否定

正規表現の否定をしたいと思い調べてみたところ http://www-creators.com/archives/1827 このサイトがすぐにぶち当たった。 (?!PATTERN) を使うことによってPATTERNを含まないという意味を持つ正規表現が作れるらしい。 実際に試してみた aa = "abc333333" b…

&&を使った際の =~演算子 と match?メソッドの違い

aa = "abc333333" bb = "333abc333333" puts aa =~ /abc/ && bb =~ /abc/ puts aa =~ /abc/ && bb =~ /^abc/ puts bb =~ /^abc/ && aa =~ /xxx/ puts aa.match?(/abc/) && bb.match?(/abc/) puts aa.match?(/abc/) && bb.match?(/^abc/) puts bb.match?(/^ab…

!~ 演算子とは

文字列と正規表現パターンを比較して、そのパターンがその文字列のどこにも含まれていないかどうかを調べます。(http://www.dataondemand.co.jp/documents/data_integrator814/rifl_language/Does_Not_Contain_Operator.html) と記載してあるが、一体どうい…

=~ 演算子とは何を意味するか

調べてみると https://www.javadrive.jp/rubyregexp/ini/index4.html 正規表現オブジェクト =~ string オブジェクトが右辺の文字列オブジェクトにマッチした場合には、マッチした位置のインデックスを返します。インデックスは対象の文字列の先頭の文字を0と…

html_safeメソッドとは

https://www.javadrive.jp/rails/template/index7.html

to_sメソッドとは

https://ref.xaio.jp/ruby/classes/string/to_s

&blockとは

link_to(name = nil, options = nil, html_options = nil, &block) というコードがあってこの&blockとはどういう意味を持っているか 例えば ary = [1,2,3] ary.each do |a| puts a end あるとしたら このblock とはputs a の処理に該当する each のような動…

tryメソッドとは

オブジェクトがnilでない場合のみ、そのオブジェクトのメソッドを実行したい!って時に使うメソッドです。 と出てくる。 ちょっとよくわからないので実際に試してみた @bodyに何も定義指定ない場合 [265] pry(#)> @body => nil と表示される [266] pry(#)> @…

require: falseについて

binding.pryを使いたいと思ったけど使えない!! gem "pry-rails"は入っているのにと思ったが、よく見ると gem 'pry-rails', require: false となっている そこでrequire: falseについて調べてみた テストの時にしか使わないgemなどではrequire: falseをつける…

.bash_profileとは

.bash_profileとは ログインシェルがbashの状態でログインしたときに読み込まれる設定ファイル 隠しファイルだから $ ls コマンドでは出てこない $ ls -a でやると出てきた $ vi ~/.bash_profile で内容を書き換えることができる