プログラミング言語 Rubyについての、初心者向けスレです。質問・要望・雑談などをどうぞ
質問するときは、OSやRubyのバージョン、エラーメッセージを書いて下さい。
Ruby on Rails については、WEBプログラミング板で
前スレ
Ruby 初心者スレッド Part 65
https://mevius.5ch.net/test/read.cgi/tech/1545421414/
るりまサーチ (リファレンス検索)
http://rurema.clear-code.com/
Rubyist Magazine - るびま
http://jp.rubyist.net/magazine/
逆引きRuby
http://www.namaraii.com/rubytips/
Ruby コミュニティ公式
https://www.ruby-lang.org/
VIPQ2_EXTDAT: checked:vvvvv:1000:512:: EXT was configured
Ruby 初心者スレッド Part 66
■ このスレッドは過去ログ倉庫に格納されています
1デフォルトの名無しさん (ワッチョイ 2a2c-RM0q)
2020/01/04(土) 01:15:34.30ID:X7t3Qsuc0102デフォルトの名無しさん (ワッチョイ 5fa5-UqN9)
2020/01/22(水) 09:50:31.20ID:mkyLzVly0 VSCodeの開発言語がVSCodeにとっては最重要言語でしょ
そうじゃない言語は傍流だから切られる
使えますよとしてるのはVSCodeに囲い込むための方便
ゆくゆくはそんな傍流には消えてほしい……とするのが普通の策略
そうじゃない言語は傍流だから切られる
使えますよとしてるのはVSCodeに囲い込むための方便
ゆくゆくはそんな傍流には消えてほしい……とするのが普通の策略
103デフォルトの名無しさん (ドコグロ MM5b-9ipO)
2020/01/22(水) 10:10:14.80ID:uoDMOHZtM MSはVSCodeをTypeScriptで書くことによって動的型に止めを刺したよね
ついでにMatzの愛するEmacsも完全にパイを奪われて死んだし、そんな因縁のエディタでRuby書くとか恥知らずもいいとこ
ついでにMatzの愛するEmacsも完全にパイを奪われて死んだし、そんな因縁のエディタでRuby書くとか恥知らずもいいとこ
104デフォルトの名無しさん (オッペケ Sr7b-3C30)
2020/01/22(水) 10:56:05.26ID:1i745hKir Emacsが死んだとかどの世界の住人ですか
105デフォルトの名無しさん (ワッチョイ df33-TZXF)
2020/01/22(水) 22:50:36.18ID:rp7FIzPH0 テキスト編集能力よりも、アプリケーション開発能力を優先すると、IDEが勝つ。
ターミナル経由だと、IDEは動作しようがないので、テキストエディタが勝つ。
ターミナル経由だと、IDEは動作しようがないので、テキストエディタが勝つ。
106デフォルトの名無しさん (ワッチョイ 5f2c-++Vr)
2020/01/22(水) 23:10:32.35ID:fyGKoId60 require 'webrick'
srv = WEBrick::HTTPServer.new( {
:BindAddress => '127.0.0.1', :Port => 20080 } )
srv.mount( '/', WEBrick::HTTPServlet::FileHandler, './' )
Signal.trap( :INT ){ srv.shutdown } # Ctrl+C で終了
srv.start
Windows 10, Ruby 2.5 で、
カレントフォルダに、index.htm と画像ファイル、abc.jpq を置いて、
WEBrick のServer/Servlet を起動して、ブラウザで見ると、
HTTP 304 で画像を、ローカルPC のキャッシュから取得するので、見えない!
1-liner で、
ruby -run -e httpd . -p 20080
としても見えないが、ポート番号を10080 に変えると見える!
常に見えるようにするには、どうすればよい?
srv = WEBrick::HTTPServer.new( {
:BindAddress => '127.0.0.1', :Port => 20080 } )
srv.mount( '/', WEBrick::HTTPServlet::FileHandler, './' )
Signal.trap( :INT ){ srv.shutdown } # Ctrl+C で終了
srv.start
Windows 10, Ruby 2.5 で、
カレントフォルダに、index.htm と画像ファイル、abc.jpq を置いて、
WEBrick のServer/Servlet を起動して、ブラウザで見ると、
HTTP 304 で画像を、ローカルPC のキャッシュから取得するので、見えない!
1-liner で、
ruby -run -e httpd . -p 20080
としても見えないが、ポート番号を10080 に変えると見える!
常に見えるようにするには、どうすればよい?
107デフォルトの名無しさん (オッペケ Sr7b-3C30)
2020/01/22(水) 23:15:37.70ID:1i745hKir jpqだからじゃねえの
109デフォルトの名無しさん (ワッチョイ 5f01-oRbG)
2020/01/23(木) 00:38:32.32ID:9sgUs0f40 304が返される状態にもかかわらず
画像が見えないなら基本的にはクライアント側の問題
まずはHTTPリクエストを確認しろ
画像が見えないなら基本的にはクライアント側の問題
まずはHTTPリクエストを確認しろ
110106 (ワッチョイ 5f2c-++Vr)
2020/01/23(木) 00:49:20.77ID:31WWjqFP0 Windows 10 のローカルPC は、アクセス権限が厳しいから、
サーバーを立てても、ブラウザのローカルキャッシュを見れないのかも?
サーバーを立てても、ブラウザのローカルキャッシュを見れないのかも?
111デフォルトの名無しさん (ワッチョイ 872d-N7cG)
2020/01/23(木) 05:02:20.43ID:DWwoifTV0 Web開発でRubyが下火になってきてるらしいけど、一体何に移ってるの?
node.js + Reactみたいに単純な構造のものを組み合わせるのが流行ってるわけ?
node.js + Reactみたいに単純な構造のものを組み合わせるのが流行ってるわけ?
112デフォルトの名無しさん (アウアウエー Sa1f-9ipO)
2020/01/23(木) 08:38:09.14ID:WRgaKbBya113デフォルトの名無しさん (アウアウエー Sa1f-9ipO)
2020/01/23(木) 08:54:27.38ID:WRgaKbBya 途中書き込み失礼
ちなみにRubyの需要が減ってるかというとそんなことはなくて、むしろ伸びてる。
じゃあなんでnodeやgoへ移ってるように見えるかというと、移行してるのは情報発信に積極的な意識高い層が中心だから。
彼らは主に(例えばCookpadのような)自社サービスで働いていて、事例としても目立ちやすいというわけ。
Rubyはプログラミングスクールで人気があるため低スキルエンジニアが供給過剰状態で、PHPの代替として低単価案件での採用が増えている。
それに伴い、意識の高い人は値下げ競争から離脱しつつあるの。
ちなみにRubyの需要が減ってるかというとそんなことはなくて、むしろ伸びてる。
じゃあなんでnodeやgoへ移ってるように見えるかというと、移行してるのは情報発信に積極的な意識高い層が中心だから。
彼らは主に(例えばCookpadのような)自社サービスで働いていて、事例としても目立ちやすいというわけ。
Rubyはプログラミングスクールで人気があるため低スキルエンジニアが供給過剰状態で、PHPの代替として低単価案件での採用が増えている。
それに伴い、意識の高い人は値下げ競争から離脱しつつあるの。
114106 (ワッチョイ 5f2c-++Vr)
2020/01/23(木) 09:48:33.02ID:31WWjqFP0 VSCode の拡張機能、Live Server で見たら、画像も見れる!
WEBrick のServer/Servlet と何が違うのかな?
WEBrick のServer/Servlet と何が違うのかな?
115デフォルトの名無しさん (オイコラミネオ MMdb-TZXF)
2020/01/23(木) 19:32:54.35ID:vOsDgWR6M キャッシュコントロールヘッダじゃないの?
知らんけど。
知らんけど。
116106 (ワッチョイ 5f2c-++Vr)
2020/01/24(金) 03:55:37.06ID:L98ica9l0 ブラウザのF12 開発者ツールで指定できる!
Chrome の開発者ツールのDisable cache で、画像が表示された!
Edge では、開発者ツールのネットワークの、
常にサーバーから更新するとか、キャッシュのクリアとかかな?
HTTP リクエスト/レスポンスのCache-Control ヘッダーも、関係ありそう
Chrome の開発者ツールのDisable cache で、画像が表示された!
Edge では、開発者ツールのネットワークの、
常にサーバーから更新するとか、キャッシュのクリアとかかな?
HTTP リクエスト/レスポンスのCache-Control ヘッダーも、関係ありそう
117デフォルトの名無しさん (ワッチョイ 275f-pD9l)
2020/01/24(金) 12:41:39.57ID:yedZaC1h0 プライベートブラウジング使え
ブラウザ閉じればキャッシュやクッキーが消えて便利だぞ
ブラウザ閉じればキャッシュやクッキーが消えて便利だぞ
118デフォルトの名無しさん (ワッチョイ 5f01-oRbG)
2020/01/24(金) 12:43:50.75ID:2IgFvbdV0 HTTPリクエストを確認すればわかること
頼むからHTTPの基礎くらいは学んでくれ
頼むからHTTPの基礎くらいは学んでくれ
119106 (ワッチョイ 5f2c-++Vr)
2020/01/25(土) 00:10:52.07ID:mLh1vP4R0 Windows 10 のローカルPC 上の、WEBrick のServer/Servlet で、
ブラウザでキャッシュ有りの時、画像が表示されないのは、なぜなのか?
結局、その理由が分からないまま
出来れば、キャッシュ有りで、画像が表示されてほしい
ブラウザでキャッシュ有りの時、画像が表示されないのは、なぜなのか?
結局、その理由が分からないまま
出来れば、キャッシュ有りで、画像が表示されてほしい
120デフォルトの名無しさん (ワッチョイ a7b0-Gc13)
2020/01/25(土) 03:58:37.57ID:PRJ1sUmm0 死ねばいい
121デフォルトの名無しさん (ワッチョイ a763-gk0v)
2020/01/25(土) 15:52:45.46ID:WZ3Oswhu0 rubyXLでエクセルいじってるが
印刷範囲を設定したいときは、どのようにすればよいのでしょうか?
いろいろ探しても見当たらず・・
印刷範囲を設定したいときは、どのようにすればよいのでしょうか?
いろいろ探しても見当たらず・・
122デフォルトの名無しさん (ワッチョイ 5fa5-V1vN)
2020/01/27(月) 17:12:09.11ID:PTqFE7Wm0 ruby.hに#define memcpy(p1,p2,n) ruby_nonempty_memcpy(p1, p2, n)ってあるけど、
c++でstd::memcpyって使ってたらおかしなことにならんか?
c++でstd::memcpyって使ってたらおかしなことにならんか?
123デフォルトの名無しさん (ワイーワ2 FF1f-FkkX)
2020/01/27(月) 17:24:08.84ID:Xu7tzl7qF srcとdstの範囲が重なってるんじゃね
124デフォルトの名無しさん (ワッチョイ 5fa5-V1vN)
2020/01/27(月) 18:36:35.04ID:PTqFE7Wm0 ちょっと試したらおかしなことにならんかった
125デフォルトの名無しさん (ワッチョイ 7fda-LQfQ)
2020/01/28(火) 12:37:06.71ID:2llLtotp0 Rubyってイベントハンドラを複数登録するタイプのクラスってどう書くのが一般的な流儀ですか?
クラス継承したり特異メソッド使ったりといった書き方もありますが
あまり異端過ぎなければlambdaを使うのが楽そうかなと思ってます
# ディレクトリを巡回してファイルを探すクラス
finder = FileFinder.new
finder.on_dir_enter = lambda{|folder| puts "entered: #{folder}" }
finder.on_dir_leave = lambda{|folder| puts "left: #{folder}" }
finder.on_file_found = lambda{|file| puts "found: #{file}" }
finder.start("./")
クラス継承したり特異メソッド使ったりといった書き方もありますが
あまり異端過ぎなければlambdaを使うのが楽そうかなと思ってます
# ディレクトリを巡回してファイルを探すクラス
finder = FileFinder.new
finder.on_dir_enter = lambda{|folder| puts "entered: #{folder}" }
finder.on_dir_leave = lambda{|folder| puts "left: #{folder}" }
finder.on_file_found = lambda{|file| puts "found: #{file}" }
finder.start("./")
126デフォルトの名無しさん (ワッチョイ 5fd7-hH+D)
2020/01/28(火) 16:48:55.02ID:viNuqCMy0 >>125
finder.on_dir_enter {|folder| puts "entered: #{folder}" }
finder.on_dir_leave {|folder| puts "left: #{folder}" }
finder.on_file_found {|file| puts "found: #{file}" }
または
finder.add_handlers(
:dir_enter => proc { |folder| puts "entered: #{folder}" },
:dir_leave => proc {|folder| puts "left: #{folder}" },
:file_found => proc {|file| puts "found: #{file}" }
)
イベントハンドラ系のAPI設計に関しては、
Ruby/Tk や Ruby-GNOME 等の GUI ツールキットを参考に
finder.on_dir_enter {|folder| puts "entered: #{folder}" }
finder.on_dir_leave {|folder| puts "left: #{folder}" }
finder.on_file_found {|file| puts "found: #{file}" }
または
finder.add_handlers(
:dir_enter => proc { |folder| puts "entered: #{folder}" },
:dir_leave => proc {|folder| puts "left: #{folder}" },
:file_found => proc {|file| puts "found: #{file}" }
)
イベントハンドラ系のAPI設計に関しては、
Ruby/Tk や Ruby-GNOME 等の GUI ツールキットを参考に
127デフォルトの名無しさん (ワッチョイ 5f01-oRbG)
2020/01/28(火) 17:18:24.30ID:nzUBCcWX0 特に理由がなければブロック渡しが一般的
簡単なEvent Emitterを自作するかライブラリ使うか
finder.on(:dir_enter) {|folder| puts "entered: #{folder}" }
ライブラリでメジャーなのはwisperかActiveSupport::Notifications
https://github.com/krisleech/wisper
簡単なEvent Emitterを自作するかライブラリ使うか
finder.on(:dir_enter) {|folder| puts "entered: #{folder}" }
ライブラリでメジャーなのはwisperかActiveSupport::Notifications
https://github.com/krisleech/wisper
128デフォルトの名無しさん (ワッチョイ ea2c-KoMo)
2020/01/29(水) 09:22:00.90ID:AYOCyHQA0129デフォルトの名無しさん (ワッチョイ ea2c-KoMo)
2020/01/29(水) 13:41:46.66ID:AYOCyHQA0 Windows で、Ruby 2.5 にバージョンアップしたら、
SQLite3 のコンパイルが必要になった!
でも漏れは、1, 2GB とサイズが大きい、MSYS2 を入れていないから、
win32ole モジュールで、ADODB でアクセス出来そうです。
ADODBは、Microsoft 製のドライバーなのか。
わざわざ、SQLite3用のドライバーも作ったのか?w
win32oleは、Rubyの標準モジュールかw
COM の種類が多い
ruby -rwin32ole -e 'puts WIN32OLE_TYPE.progids.length'
#=> 2521
SQLite3 のコンパイルが必要になった!
でも漏れは、1, 2GB とサイズが大きい、MSYS2 を入れていないから、
win32ole モジュールで、ADODB でアクセス出来そうです。
ADODBは、Microsoft 製のドライバーなのか。
わざわざ、SQLite3用のドライバーも作ったのか?w
win32oleは、Rubyの標準モジュールかw
COM の種類が多い
ruby -rwin32ole -e 'puts WIN32OLE_TYPE.progids.length'
#=> 2521
130129 (ワッチョイ ea2c-KoMo)
2020/01/29(水) 14:03:59.52ID:AYOCyHQA0 >>129
訂正
>ADODBは、Microsoft 製のドライバーなのか。
>わざわざ、SQLite3用のドライバーも作ったのか?
SQLite3 などのODBC ドライバーは、Microsoft 製じゃない。
誰かが作ったものです
訂正
>ADODBは、Microsoft 製のドライバーなのか。
>わざわざ、SQLite3用のドライバーも作ったのか?
SQLite3 などのODBC ドライバーは、Microsoft 製じゃない。
誰かが作ったものです
131デフォルトの名無しさん (ワッチョイ 7f05-QQjh)
2020/02/07(金) 23:21:28.28ID:t9uaVZtz0 RubyのOcraについて質問です。
無限ループの中でタイマーカウント満了の度に処理を行って待ちに入るという動作のプログラムって実はEXE化できないという制約があったりしますでしょうか?
また、その場合の解消方法とかをご存じの方、よろしくお願い申し上げます。
無限ループの中でタイマーカウント満了の度に処理を行って待ちに入るという動作のプログラムって実はEXE化できないという制約があったりしますでしょうか?
また、その場合の解消方法とかをご存じの方、よろしくお願い申し上げます。
132デフォルトの名無しさん (オッペケ Sr0b-Hkqy)
2020/02/08(土) 10:32:17.79ID:hHzEGlOhr133デフォルトの名無しさん (ワッチョイ 9f2c-ndoi)
2020/02/08(土) 13:28:21.15ID:9Nn74D/R0134デフォルトの名無しさん (ワッチョイ 9f7c-YOmB)
2020/02/10(月) 17:54:32.25ID:nkCUteta0 下記のコードでifの位置ってここでいいの。rubyの本の記述なんだけど。
2行目だけどifの方が左なんじゃないの?右でも行けるって事かな?
def greeting(country)
return 'countryを入力してください' if country.nil?
if country == 'japan'
'こんにちは’
else
'hello'
end
end
greeting(nil)
greeting('japan')
2行目だけどifの方が左なんじゃないの?右でも行けるって事かな?
def greeting(country)
return 'countryを入力してください' if country.nil?
if country == 'japan'
'こんにちは’
else
'hello'
end
end
greeting(nil)
greeting('japan')
135デフォルトの名無しさん (ワイーワ2 FFdf-VM48)
2020/02/10(月) 17:55:54.47ID:JljXo4cdF 後置
136デフォルトの名無しさん (ワッチョイ 9f7c-YOmB)
2020/02/10(月) 18:40:17.86ID:nkCUteta0137デフォルトの名無しさん (ワッチョイ 9f01-OQuQ)
2020/02/10(月) 20:46:54.23ID:cKG4UD690 わからない時はまずリファレンス
https://docs.ruby-lang.org/ja/master/doc/spec=2fcontrol.html#if
ifは前置でも後置でもいける仕様
後置ifは正式にはif修飾子(if modifier)
https://docs.ruby-lang.org/ja/master/doc/spec=2fcontrol.html#if
ifは前置でも後置でもいける仕様
後置ifは正式にはif修飾子(if modifier)
138デフォルトの名無しさん (ワッチョイ 1f33-mA3f)
2020/02/10(月) 21:36:49.68ID:cuubi2Q/0 しかし、何がしたいのかはわからんコード。
文字列を返してるだけ?
文字列を返してるだけ?
139デフォルトの名無しさん (ワッチョイ 9f2c-ndoi)
2020/02/10(月) 23:17:58.15ID:8D13KkA50 そりゃ、ユーザーからの入力値チェックは、必要
まあ、デフォルト値は、nil の代わりに、空文字列にしておく手もある
まあ、デフォルト値は、nil の代わりに、空文字列にしておく手もある
140デフォルトの名無しさん (ワッチョイ 3714-A9K6)
2020/02/11(火) 00:09:12.87ID:dIRIcC/n0141デフォルトの名無しさん (アウアウウー Sa9b-YLe+)
2020/02/11(火) 07:38:12.35ID:jcgFHncna 後起きifはRubyの文法的にはかなり無理があって、その実現のためだけにRubyが「全てが式」ではなくなっているという極めて特殊な構文
Matz的によほどの拘りがあるんだろうけど、違和感を感じる>>134のセンスはとても正しい
Matz的によほどの拘りがあるんだろうけど、違和感を感じる>>134のセンスはとても正しい
142デフォルトの名無しさん (ワッチョイ bf8c-0JiW)
2020/02/11(火) 09:49:56.57ID:GpQNLMm40 perl後継としては外せない
143デフォルトの名無しさん (ワッチョイ 9fa5-tq9U)
2020/02/11(火) 10:04:30.75ID:Nq1ZGiCx0 perlなら当然でしょ
rubyはそこを汲んでる
rubyはそこを汲んでる
144デフォルトの名無しさん (ワッチョイ 3714-A9K6)
2020/02/11(火) 10:14:08.59ID:dIRIcC/n0 Perlに不満ってあるの?
どれだけある?
どれだけある?
145デフォルトの名無しさん (アウウィフ FF9b-VM48)
2020/02/11(火) 12:56:14.55ID:KtXysiBKF >>141
Rubyのあちこちで見受けられるPerlの悪い所をわざわざパクったアホな例の一つだな
Rubyのあちこちで見受けられるPerlの悪い所をわざわざパクったアホな例の一つだな
146デフォルトの名無しさん (ワッチョイ 9f01-OQuQ)
2020/02/11(火) 13:01:20.53ID:v/oRLdRM0 >>141
>その実現のためだけにRubyが「全てが式」ではなくなっているという極めて特殊な構文
「全てが式」ってのはstatementとexpressionに明確な区別のある言語との対比で
Rubyの特徴をわかりやすく説明するために使われてるだけ
式の一部どれをとっても全てが式になってるまともな言語があるわけない
Rubyには後置以外の修飾子だってあるしstatementもある
中途半端な知識で勘違いしてドヤるのはやめよう
>その実現のためだけにRubyが「全てが式」ではなくなっているという極めて特殊な構文
「全てが式」ってのはstatementとexpressionに明確な区別のある言語との対比で
Rubyの特徴をわかりやすく説明するために使われてるだけ
式の一部どれをとっても全てが式になってるまともな言語があるわけない
Rubyには後置以外の修飾子だってあるしstatementもある
中途半端な知識で勘違いしてドヤるのはやめよう
147デフォルトの名無しさん (アウアウエー Sadf-56gX)
2020/02/11(火) 13:17:51.03ID:D5vn67vCa perl に比べて ruby の優っているところは?
148デフォルトの名無しさん (オッペケ Sr0b-Hkqy)
2020/02/11(火) 13:22:48.99ID:XWZwag4pr if/unless, while/until, rescue
149デフォルトの名無しさん (ワッチョイ ff14-A9K6)
2020/02/11(火) 13:27:43.83ID:eT6ZDI7H0 >>147
Perlにはオブジェクト指向ようの構文が後付で原始的なものしか搭載されてない。
アセンブラを駆使すれば何でもできるように、原始的な機能でも頑張れば
高度なオブジェクト指向機能を作ることは可能だが、
そのせいでいくつもの実装が生まれライブラリごとに使ってる
仕組みが異なり統一ができずに破綻してしまった。
Rubyは最初からオブジェクト指向
Perlにはオブジェクト指向ようの構文が後付で原始的なものしか搭載されてない。
アセンブラを駆使すれば何でもできるように、原始的な機能でも頑張れば
高度なオブジェクト指向機能を作ることは可能だが、
そのせいでいくつもの実装が生まれライブラリごとに使ってる
仕組みが異なり統一ができずに破綻してしまった。
Rubyは最初からオブジェクト指向
150デフォルトの名無しさん (ワッチョイ 9f74-cN98)
2020/02/11(火) 14:28:51.94ID:R1PPlg5z0 >>146
>式の一部どれをとっても全てが式になってるまともな言語があるわけない
LISP, Haskell, ML, …etc
>中途半端な知識で勘違いしてドヤるのはやめよう
この記事の原著者も「中途半端な知識で勘違いしてドヤ」ってるのかなぁ
・Rubyによる関数型プログラミング
http://xtmlab.com/misc/FPwithRuby.html
なお、手続き型言語の大半が文と式を明確に分けている中で、
Ruby の「すべてが式」という思想はユニークであるが、
次世代言語 Rust でも同様な思想が採用された
以下は書籍「プログラミングRust」からの引用
> Rustはいわゆる式言語(expression language)の一つだ。
> つまり、Lispにまで遡る古い伝統に従い、すべてを式で行う。
中途半端な知識で勘違いしてドヤると恥をかくだけだよ
>式の一部どれをとっても全てが式になってるまともな言語があるわけない
LISP, Haskell, ML, …etc
>中途半端な知識で勘違いしてドヤるのはやめよう
この記事の原著者も「中途半端な知識で勘違いしてドヤ」ってるのかなぁ
・Rubyによる関数型プログラミング
http://xtmlab.com/misc/FPwithRuby.html
なお、手続き型言語の大半が文と式を明確に分けている中で、
Ruby の「すべてが式」という思想はユニークであるが、
次世代言語 Rust でも同様な思想が採用された
以下は書籍「プログラミングRust」からの引用
> Rustはいわゆる式言語(expression language)の一つだ。
> つまり、Lispにまで遡る古い伝統に従い、すべてを式で行う。
中途半端な知識で勘違いしてドヤると恥をかくだけだよ
151デフォルトの名無しさん (ワッチョイ 9f01-OQuQ)
2020/02/11(火) 18:41:16.57ID:v/oRLdRM0 >>150
>LISP, Haskell, ML, …etc
おまえアホやろ
Lispの閉じ括弧は式なのか? シングルクウォートは式なのか?Haskellのコロンは式なのか?
if修飾子が式じゃない極めて特殊()な構文って主張はそれと同じレベルなんだけど
>この記事の原著者も「中途半端な知識で勘違いしてドヤ」ってるのかなぁ
「あらゆるすべてが式である」のすべてに何が含まれて何が含まれないのか理解してるかどうかだよ
原著者が理解してるかどうかは知らないけどお前は間違いなく理解してない
ついでに言っておくとRubyの「全ては式」が広まったのはDavid Flanaganが「The Ruby Programming Language」で他言語出身者にわかりやすく理解させるためにそれっぽいことを書いたのが理由
>LISP, Haskell, ML, …etc
おまえアホやろ
Lispの閉じ括弧は式なのか? シングルクウォートは式なのか?Haskellのコロンは式なのか?
if修飾子が式じゃない極めて特殊()な構文って主張はそれと同じレベルなんだけど
>この記事の原著者も「中途半端な知識で勘違いしてドヤ」ってるのかなぁ
「あらゆるすべてが式である」のすべてに何が含まれて何が含まれないのか理解してるかどうかだよ
原著者が理解してるかどうかは知らないけどお前は間違いなく理解してない
ついでに言っておくとRubyの「全ては式」が広まったのはDavid Flanaganが「The Ruby Programming Language」で他言語出身者にわかりやすく理解させるためにそれっぽいことを書いたのが理由
152デフォルトの名無しさん (ワッチョイ 9f74-cN98)
2020/02/11(火) 22:59:40.20ID:R1PPlg5z0 >>151
文節「すべてが式」に対する君の認識が、世間の一般常識から乖離していることを理解した
文節「すべてが式」に対する君の認識が、世間の一般常識から乖離していることを理解した
153デフォルトの名無しさん (ワッチョイ d201-b83C)
2020/02/12(水) 00:01:32.50ID:39kCYFWR0 >>152
keywordやsymbolそれ自体が式なわけないだろ?
それと同じことを主張してたの理解できたのかな?
制御構造のif式だって`if 式; end`全体で式として評価されるわけで
ifだけやendだけが式になるわけじゃない
if修飾子は`式 if 式`全体で式として評価されるわけで
後置の`if 式`だけで式になるわけじゃない
でその一部を取り出して
「その実現のためだけにRubyが「全てが式」ではなくなっているという極めて特殊な構文」
って言っちゃうのがどれだけ的外れかって話な
keywordやsymbolそれ自体が式なわけないだろ?
それと同じことを主張してたの理解できたのかな?
制御構造のif式だって`if 式; end`全体で式として評価されるわけで
ifだけやendだけが式になるわけじゃない
if修飾子は`式 if 式`全体で式として評価されるわけで
後置の`if 式`だけで式になるわけじゃない
でその一部を取り出して
「その実現のためだけにRubyが「全てが式」ではなくなっているという極めて特殊な構文」
って言っちゃうのがどれだけ的外れかって話な
154デフォルトの名無しさん (ワッチョイ a701-9iBN)
2020/02/12(水) 01:40:12.18ID:3IloEGU30 電卓の構文解析器を作ったことがあれば、だいぶご意見が変わるはず。
155デフォルトの名無しさん (ワッチョイ ef1d-sg8N)
2020/02/12(水) 01:51:46.06ID:CB9IiDBv0 実務経験1年で月収80万稼げるエンジニアになった理由
https://www.youtube.com/watch?v=DrbbyGsHQic
意識が低いエンジニアこそフリーランスになれ
https://www.youtube.com/watch?v=nSEaAJlgjbQ
フリーランスエンジニアの週3労働ってどんな感じ?
https://www.youtube.com/watch?v=8yjoDCdbzMc
ぼくがスキルのない社畜ならこうやって脱する
https://www.youtube.com/watch?v=aae8xxbUlMM
初めて人を雇ったらもう二度とサラリーマンをやりたくないと思った話
https://www.youtube.com/watch?v=U0OCGRVLFsM
プログラミングは文系でも余裕で出来ます!理由を現役プログラマーが解説
https://www.youtube.com/watch?v=iBOeiSKBIW8
貧乏人こそ社会不適合者
https://www.youtube.com/watch?v=O3BT72BIBJI
元ド貧乏が教える】貧乏を抜け出すための2つの考え方
https://www.youtube.com/watch?v=IRrCgTy3ckc
より良いオファー貰ってるのに転職しないとか何考えてるの?
https://www.youtube.com/watch?v=i0J6uRhlj7o
https://www.youtube.com/watch?v=DrbbyGsHQic
意識が低いエンジニアこそフリーランスになれ
https://www.youtube.com/watch?v=nSEaAJlgjbQ
フリーランスエンジニアの週3労働ってどんな感じ?
https://www.youtube.com/watch?v=8yjoDCdbzMc
ぼくがスキルのない社畜ならこうやって脱する
https://www.youtube.com/watch?v=aae8xxbUlMM
初めて人を雇ったらもう二度とサラリーマンをやりたくないと思った話
https://www.youtube.com/watch?v=U0OCGRVLFsM
プログラミングは文系でも余裕で出来ます!理由を現役プログラマーが解説
https://www.youtube.com/watch?v=iBOeiSKBIW8
貧乏人こそ社会不適合者
https://www.youtube.com/watch?v=O3BT72BIBJI
元ド貧乏が教える】貧乏を抜け出すための2つの考え方
https://www.youtube.com/watch?v=IRrCgTy3ckc
より良いオファー貰ってるのに転職しないとか何考えてるの?
https://www.youtube.com/watch?v=i0J6uRhlj7o
156デフォルトの名無しさん (ワッチョイ 0233-Rcr8)
2020/02/12(水) 02:31:04.61ID:zXn0/Xf90157150および151 (ワッチョイ 7274-XNsy)
2020/02/12(水) 03:15:58.26ID:1hwSKrXM0158デフォルトの名無しさん (ワッチョイ b252-E40k)
2020/02/12(水) 06:32:46.81ID:m8mhjAm70 >>155
グロ
グロ
159デフォルトの名無しさん (ドコグロ MM32-H6bD)
2020/02/12(水) 09:42:28.21ID:gfctBwevM 「Rubyでは全てが式だ」というとき、ステートメント(文)と式の区別がないことを意味するのが普通だ
言語によってはメソッドやクラスの定義も普通の式だったりするが、Rubyでそう思っている奴はいないだろう
しかしRubyではステートメントと式の区別がないというのは厳密には正しくない
文法定義のソースを見れば明らかだが、それが後置構文の存在のためであるのは事実
言語によってはメソッドやクラスの定義も普通の式だったりするが、Rubyでそう思っている奴はいないだろう
しかしRubyではステートメントと式の区別がないというのは厳密には正しくない
文法定義のソースを見れば明らかだが、それが後置構文の存在のためであるのは事実
160デフォルトの名無しさん (ワッチョイ de8c-gRil)
2020/02/12(水) 22:16:17.93ID:Pa88PYmd0 def foo(arg)
arg + 1
end(99) #=> 100
動かない
arg + 1
end(99) #=> 100
動かない
161デフォルトの名無しさん (ワッチョイ 335f-JhxJ)
2020/02/13(木) 10:51:24.11ID:6MxuLkX50 p send(def foo(a); a + 1;end, 99) # => 100
162デフォルトの名無しさん (ワッチョイ de8c-gRil)
2020/02/13(木) 21:55:21.77ID:i9bfivOD0 お、うーむ...なるほど
163デフォルトの名無しさん (オッペケ Src7-gtE8)
2020/02/13(木) 22:02:31.32ID:TNGg/IHkr p def foo(a)
a + 1
end.then{|s| method(s)[99]}
# => 100
a + 1
end.then{|s| method(s)[99]}
# => 100
164デフォルトの名無しさん (ワッチョイ 0233-Rcr8)
2020/02/13(木) 23:08:11.62ID:0ZbbVgVA0 つまり、扱いは同じではない、ということかな?w
165デフォルトの名無しさん (ワッチョイ e67d-dJav)
2020/02/13(木) 23:20:32.77ID:oR70BErs0 foo = -> (arg) {
arg + 1
}.( 99 ) #=> 100
arg + 1
}.( 99 ) #=> 100
166デフォルトの名無しさん (ワッチョイ 122c-LiuO)
2020/02/14(金) 12:22:11.03ID:+9NDg3r60 ( ) で囲んで式にすれば、
JavaScript のIIFE (Immediately Invoked Function Expression; 即時実行関数式)みたいに、無名関数にできた!
( -> (arg) {
puts arg + 1
} ).( 99 ) #=> 100
JavaScript のIIFE (Immediately Invoked Function Expression; 即時実行関数式)みたいに、無名関数にできた!
( -> (arg) {
puts arg + 1
} ).( 99 ) #=> 100
167デフォルトの名無しさん (ワッチョイ 122c-LiuO)
2020/02/14(金) 12:36:32.48ID:+9NDg3r60 msys2 無しのWindows 10, Ruby 2.5 で、
WEBrick::HTTPServlet::CGIHandler は使えない!
ERROR CGIHandler:
C:/Ruby25-x64/lib/ruby/site_ruby/2.5.0/ruby_installer/runtime/msys2_installation.rb:63:in `iterate_msys_paths':
undefined method `split' for nil:NilClass (NoMethodError)
エラーログに、enable_dll_search_paths とあるから、dll でも使うのかな?
WEBrick::HTTPServlet::CGIHandler は使えない!
ERROR CGIHandler:
C:/Ruby25-x64/lib/ruby/site_ruby/2.5.0/ruby_installer/runtime/msys2_installation.rb:63:in `iterate_msys_paths':
undefined method `split' for nil:NilClass (NoMethodError)
エラーログに、enable_dll_search_paths とあるから、dll でも使うのかな?
168デフォルトの名無しさん (ワッチョイ d201-b83C)
2020/02/14(金) 17:39:20.53ID:EOtBZfN80 >>166
>( ) で囲んで式にすれば、
括弧なくても定義したlambdaが返される
.()でそのlambdaのcallメソッドを呼び出してるだけ
-> (arg) { arg + 1 }.(99) でも
-> (arg) { arg + 1 }[99] でも
-> (arg) { arg + 1 }.call 99 でも同じ
ちなみにJSのvar foo = (x)=> x+1 みたいなのは関数に名前はついてないので無名関数だぞ
rubyで foo = -> (arg) { arg + 1 } と書いても
無名のlambdaをfooという変数に入れてるだけで
lambda自身に名前がつくわけではない
>( ) で囲んで式にすれば、
括弧なくても定義したlambdaが返される
.()でそのlambdaのcallメソッドを呼び出してるだけ
-> (arg) { arg + 1 }.(99) でも
-> (arg) { arg + 1 }[99] でも
-> (arg) { arg + 1 }.call 99 でも同じ
ちなみにJSのvar foo = (x)=> x+1 みたいなのは関数に名前はついてないので無名関数だぞ
rubyで foo = -> (arg) { arg + 1 } と書いても
無名のlambdaをfooという変数に入れてるだけで
lambda自身に名前がつくわけではない
169デフォルトの名無しさん (ワッチョイ 335f-JhxJ)
2020/02/15(土) 13:46:02.32ID:BIOI8zPQ0170167 (ワッチョイ 122c-LiuO)
2020/02/15(土) 17:09:24.91ID:8drC8DpT0 msys2 を入れずに、Ruby を使っているから、
コンパイルできないし、Windows 10 のネイティブDLL を使えない
Ruby 2.5 で、SQLite も使えなくなったw
WEBrick は、Rubyで実装されているから、msys2 無しでも動くと思ったけど、
WEBrick::HTTPServlet::CGIHandler で、ネイティブDLLを使っているのだろう
rubyist magazine を冒頭から読み始めたが、読み応えある!
コンパイルできないし、Windows 10 のネイティブDLL を使えない
Ruby 2.5 で、SQLite も使えなくなったw
WEBrick は、Rubyで実装されているから、msys2 無しでも動くと思ったけど、
WEBrick::HTTPServlet::CGIHandler で、ネイティブDLLを使っているのだろう
rubyist magazine を冒頭から読み始めたが、読み応えある!
171デフォルトの名無しさん (ワッチョイ 335f-JhxJ)
2020/02/16(日) 02:30:58.30ID:A+9IORaN0 >>170
msys2_installation.rb:63にmsys2関係ないって
https://github.com/oneclick/rubyinstaller2/blob/rubyinstaller-2.5.0-1/lib/ruby_installer/build/msys2_installation.rb#L63
これが失敗するのは環境変数がおかしいか、上書きしているか
それともENVを再定義しているくらいしか思いつかない
msys2_installation.rb:63にmsys2関係ないって
https://github.com/oneclick/rubyinstaller2/blob/rubyinstaller-2.5.0-1/lib/ruby_installer/build/msys2_installation.rb#L63
これが失敗するのは環境変数がおかしいか、上書きしているか
それともENVを再定義しているくらいしか思いつかない
172167 (ワッチョイ 122c-LiuO)
2020/02/16(日) 19:14:49.59ID:5EL9p8ON0 漏れは、Windows 10,Ruby 2.5 で、
Run ‘ridk install’ to install MSYS2 and development toolchain. も、チェックしていないし、
MSYS2 の開発ツールと、MINGW のコンパイラもインストールしていないから
Rubyの環境構築(Windows10編)
https://www.kenschool.jp/blog/?p=3898
エラーログ
C:/Ruby25-x64/lib/ruby/site_ruby/2.5.0/ruby_installer/runtime/msys2_installation.rb:63:in `iterate_msys_paths': undefined method `split' for nil:NilClass (NoMethodError)\r\n\t
from C:/Ruby25-x64/lib/ruby/site_ruby/2.5.0/ruby_installer/runtime/msys2_installation.rb:76:in `msys_path'\r\n\t
from C:/Ruby25-x64/lib/ruby/site_ruby/2.5.0/ruby_installer/runtime/msys2_installation.rb:89:in `mingw_bin_path'\r\n\t
from C:/Ruby25-x64/lib/ruby/site_ruby/2.5.0/ruby_installer/runtime/msys2_installation.rb:99:in `enable_dll_search_paths'\r\n\t
from C:/Ruby25-x64/lib/ruby/site_ruby/2.5.0/ruby_installer/runtime/singleton.rb:27:in `enable_dll_search_paths'\r\n\t
from C:/Ruby25-x64/lib/ruby/2.5.0/rubygems/defaults/operating_system.rb:3:in `<top (required)>'\r\n\t
from C:/Ruby25-x64/lib/ruby/2.5.0/rubygems.rb:1383:in `require'\r\n\t
from C:/Ruby25-x64/lib/ruby/2.5.0/rubygems.rb:1383:in `<top (required)>'\r\n\t
from <internal:gem_prelude>:2:in `require'\r\n\t
from <internal:gem_prelude>:2:in `<internal:gem_prelude>'\r\n
Run ‘ridk install’ to install MSYS2 and development toolchain. も、チェックしていないし、
MSYS2 の開発ツールと、MINGW のコンパイラもインストールしていないから
Rubyの環境構築(Windows10編)
https://www.kenschool.jp/blog/?p=3898
エラーログ
C:/Ruby25-x64/lib/ruby/site_ruby/2.5.0/ruby_installer/runtime/msys2_installation.rb:63:in `iterate_msys_paths': undefined method `split' for nil:NilClass (NoMethodError)\r\n\t
from C:/Ruby25-x64/lib/ruby/site_ruby/2.5.0/ruby_installer/runtime/msys2_installation.rb:76:in `msys_path'\r\n\t
from C:/Ruby25-x64/lib/ruby/site_ruby/2.5.0/ruby_installer/runtime/msys2_installation.rb:89:in `mingw_bin_path'\r\n\t
from C:/Ruby25-x64/lib/ruby/site_ruby/2.5.0/ruby_installer/runtime/msys2_installation.rb:99:in `enable_dll_search_paths'\r\n\t
from C:/Ruby25-x64/lib/ruby/site_ruby/2.5.0/ruby_installer/runtime/singleton.rb:27:in `enable_dll_search_paths'\r\n\t
from C:/Ruby25-x64/lib/ruby/2.5.0/rubygems/defaults/operating_system.rb:3:in `<top (required)>'\r\n\t
from C:/Ruby25-x64/lib/ruby/2.5.0/rubygems.rb:1383:in `require'\r\n\t
from C:/Ruby25-x64/lib/ruby/2.5.0/rubygems.rb:1383:in `<top (required)>'\r\n\t
from <internal:gem_prelude>:2:in `require'\r\n\t
from <internal:gem_prelude>:2:in `<internal:gem_prelude>'\r\n
173デフォルトの名無しさん (ワッチョイ 335f-JhxJ)
2020/02/17(月) 01:04:16.59ID:gpbv7rcq0 あー、WebrickのCGIHandlerはCGIPathEnvの関係でENV["PATH"]がnilになりうるのか
WEBrick::HTTPServer.newに渡すハッシュにCGIPathEnv: ""を加えとけばいいはず
WEBrick::HTTPServer.newに渡すハッシュにCGIPathEnv: ""を加えとけばいいはず
174167 (ワッチョイ 122c-LiuO)
2020/02/17(月) 01:35:30.73ID:A9t7x7q20 ありがとう。
オプションに、:CGIPathEnv => '' を加えたら、正常に動いた!
すごい実力じゃん!
ソースコードを追っていったの?
opts = { :CGIInterpreter => "C:/Ruby25-x64/bin/ruby.exe",
:CGIPathEnv => '', # msys2 のエラーを避けるために、必要!
:DocumentRoot => './', # この指定が必要!
:BindAddress => '127.0.0.1', :Port => 20080 }
srv = WEBrick::HTTPServer.new( opts )
オプションに、:CGIPathEnv => '' を加えたら、正常に動いた!
すごい実力じゃん!
ソースコードを追っていったの?
opts = { :CGIInterpreter => "C:/Ruby25-x64/bin/ruby.exe",
:CGIPathEnv => '', # msys2 のエラーを避けるために、必要!
:DocumentRoot => './', # この指定が必要!
:BindAddress => '127.0.0.1', :Port => 20080 }
srv = WEBrick::HTTPServer.new( opts )
175デフォルトの名無しさん (オッペケ Src7-gtE8)
2020/02/17(月) 05:37:18.50ID:SykEsoD4r なんかムカつく
176デフォルトの名無しさん (ワッチョイ d62d-qw96)
2020/02/17(月) 15:17:53.59ID:9CP/4dwv0 新しくて安い本が出たので、頭の体操にRubyの勉強を始めたところなんだけどさあ
よくネット上に、「Railsの本をやってからRubyの勉強をした」みたいな人がいるのはどういうことなの?
RailsってRubyが出来ないと何も出来ない訳でもないの???
よくネット上に、「Railsの本をやってからRubyの勉強をした」みたいな人がいるのはどういうことなの?
RailsってRubyが出来ないと何も出来ない訳でもないの???
177デフォルトの名無しさん (ワッチョイ b714-+5Ha)
2020/02/17(月) 15:33:27.23ID:qj5C8HtX0 普通にプログラミングできる人にとっては言語の違いなんて些細なもので
いちから作るのならともかく、そこいらにあるRailsのコードや自動生成されたものを
見ればそこからRubyという言語を推測で理解できるんだよ。
このコードがクラス定義だな。Rubyではこう書くんだなって
わからなければそこだけググればいい
Railsはやり方というものがあるので、それに合わせるように
Railsの本を見て流れを把握する必要がある。
検索は断片を見つけるのはキーワードから簡単に見つけられるが
流れはそうはいかない。だいたいの本はページの最初から流れを
そのまま書いてあるから、本でざっと勉強するのが最初のうちは手っ取り早い
いちから作るのならともかく、そこいらにあるRailsのコードや自動生成されたものを
見ればそこからRubyという言語を推測で理解できるんだよ。
このコードがクラス定義だな。Rubyではこう書くんだなって
わからなければそこだけググればいい
Railsはやり方というものがあるので、それに合わせるように
Railsの本を見て流れを把握する必要がある。
検索は断片を見つけるのはキーワードから簡単に見つけられるが
流れはそうはいかない。だいたいの本はページの最初から流れを
そのまま書いてあるから、本でざっと勉強するのが最初のうちは手っ取り早い
178デフォルトの名無しさん (ワッチョイ d62d-qw96)
2020/02/17(月) 18:20:35.95ID:9CP/4dwv0 そういうことか
言語だけ先にやると変な癖がついたりもするし、演習ファーストの学習も結構いいかもな
言語だけ先にやると変な癖がついたりもするし、演習ファーストの学習も結構いいかもな
179デフォルトの名無しさん (ワッチョイ b7d2-Htok)
2020/02/17(月) 18:45:44.78ID:wxeqwMT50 日本語の勉強がしたいと言ったら
舞城王太郎の小説を読めと言われた気分
舞城王太郎の小説を読めと言われた気分
180デフォルトの名無しさん (ワッチョイ 122c-LiuO)
2020/02/17(月) 19:30:14.53ID:A9t7x7q20 たぶん、すでに多言語を知ってる人だろう
入門書の次のレベルの、新しい本が出た!
Ruby on Rails 6 実践ガイド、黒田努、2019/12/20
実践Ruby on Rails 4: 現場のプロから学ぶ本格Webプログラミング、黒田努、2014
この本を書き換えたもの
無料のRails チュートリアルよりは簡単
Windows プロ版のDocker が不安定だから、Virtual Box, Ubuntu 18.04 でやってる!
入門書の次のレベルの、新しい本が出た!
Ruby on Rails 6 実践ガイド、黒田努、2019/12/20
実践Ruby on Rails 4: 現場のプロから学ぶ本格Webプログラミング、黒田努、2014
この本を書き換えたもの
無料のRails チュートリアルよりは簡単
Windows プロ版のDocker が不安定だから、Virtual Box, Ubuntu 18.04 でやってる!
181デフォルトの名無しさん (ワイーワ2 FF6a-BDVY)
2020/02/18(火) 12:16:06.30ID:r+eOvEZJF またカタワを量産するつもりか
RailsRubyの将来は暗いな
RailsRubyの将来は暗いな
182デフォルトの名無しさん (ワッチョイ ff2c-lQWV)
2020/02/25(火) 19:09:01.56ID:Ykw6mmDG0 「aabc → bc」みたいに、先頭から特定の文字が連続するとき、それを除去するには、どう書く?
正規表現を使ったものと、使っていない場合の両方
str = "aabc"
# 先頭から続く、a を除去する
while str.start_with? "a" # 先頭文字が、a なら
str.slice! 0 # 先頭文字を削除する
end
p str #=> "bc"
正規表現を使ったものと、使っていない場合の両方
str = "aabc"
# 先頭から続く、a を除去する
while str.start_with? "a" # 先頭文字が、a なら
str.slice! 0 # 先頭文字を削除する
end
p str #=> "bc"
183デフォルトの名無しさん (ワッチョイ ffa5-1Vd5)
2020/02/25(火) 20:42:26.89ID:uCkT0+w20 そりゃ正規表現のステートマシン通りに書くでしょ
184デフォルトの名無しさん (オッペケ Sr07-VXi+)
2020/02/25(火) 22:00:57.29ID:uBU1PACqr185デフォルトの名無しさん (オッペケ Sr07-VXi+)
2020/02/25(火) 22:07:44.86ID:uBU1PACqr186デフォルトの名無しさん (ワッチョイ ff01-pEhb)
2020/02/25(火) 22:22:39.72ID:oSeHo6cg0 >>182
def remove_consecutive(string)
string.sub(/^(.)¥1{1,}(.*)$/) {|_| remove_consecutive($2)}
end
remove_consecutive("aaaabbbbbbccab") #=> “ab”
remove_consecutive("1112234") #=> "34"
def remove_consecutive(string)
string.sub(/^(.)¥1{1,}(.*)$/) {|_| remove_consecutive($2)}
end
remove_consecutive("aaaabbbbbbccab") #=> “ab”
remove_consecutive("1112234") #=> "34"
187デフォルトの名無しさん (ワッチョイ 6f8c-zTrs)
2020/02/25(火) 22:59:04.49ID:/XslCVsc0 本当に文字列から連続部分を除去したいのか、
連続部分の後ろが取り出せればいいのか
連続部分の後ろが取り出せればいいのか
188182 (ワッチョイ ff2c-lQWV)
2020/02/25(火) 23:54:26.45ID:Ykw6mmDG0 元々は「0082 → 82」みたいな文字列の先頭から続く、0 を除去したかった。
先頭以外のものは、除去しなくてよい
こういうメソッドが無いか、探してみたけど見つからなかった
レシーバーの破壊的な変更をしてもよいし、別の文字列を作って返すものでもよい
先頭以外のものは、除去しなくてよい
こういうメソッドが無いか、探してみたけど見つからなかった
レシーバーの破壊的な変更をしてもよいし、別の文字列を作って返すものでもよい
189182 (ワッチョイ ca2c-rVtL)
2020/02/26(水) 00:52:55.60ID:TmIxTRKQ0 文字列の先頭から続く、特定の文字を除去する
1文字でも除去するし、連続するかぎり除去するが、
先頭以外のものは、除去しなくてよい
a を除去する場合
abc → bc
aaXaa → Xaa
1文字でも除去するし、連続するかぎり除去するが、
先頭以外のものは、除去しなくてよい
a を除去する場合
abc → bc
aaXaa → Xaa
190デフォルトの名無しさん (ワッチョイ 8a01-k1AF)
2020/02/26(水) 01:11:17.25ID:sMj0eedP0 >>188
>元々は「0082 → 82」みたいな文字列の先頭から続く、0 を除去したかった。
“0082”.to_i.to_sでよくね?
なんかこのパターン数ヶ月前にも見たような気がするな
>>189
def remove_leading_chars(string, char)
string.each_char.drop_while{|c| c == char}.join
end
remove_leading_chars(“0000123", “0”) #=> "123"
remove_leading_chars(“abc", “a”) #=> "bc"
remove_leading_chars(“aaXaa", “a”) #=> "Xaa"
>元々は「0082 → 82」みたいな文字列の先頭から続く、0 を除去したかった。
“0082”.to_i.to_sでよくね?
なんかこのパターン数ヶ月前にも見たような気がするな
>>189
def remove_leading_chars(string, char)
string.each_char.drop_while{|c| c == char}.join
end
remove_leading_chars(“0000123", “0”) #=> "123"
remove_leading_chars(“abc", “a”) #=> "bc"
remove_leading_chars(“aaXaa", “a”) #=> "Xaa"
191182 (ワッチョイ ca2c-rVtL)
2020/02/26(水) 04:46:15.55ID:TmIxTRKQ0 >“0082”.to_i.to_sでよくね?
長い文字列だと、数値化できない言語もあるから、
汎用的に作れないかなと思って
長い文字列だと、数値化できない言語もあるから、
汎用的に作れないかなと思って
192デフォルトの名無しさん (ワッチョイ 4aa5-SiQa)
2020/02/26(水) 08:06:23.34ID:PiyizPRV0 だからオートマトンで作れって言ってんじゃん
ttps://image.slidesharecdn.com/1-140715084054-phpapp01/95/1-11-638.jpg
ttps://image.slidesharecdn.com/1-140715084054-phpapp01/95/1-11-638.jpg
193デフォルトの名無しさん (ワッチョイ 0314-IyPa)
2020/02/26(水) 08:22:48.67ID:kXv4PxDr0 オートマトンってなんで羊なんだろう?
自動的に毛を刈って自動的に料理されるのか?
自動的に毛を刈って自動的に料理されるのか?
194デフォルトの名無しさん (ワッチョイ 6b01-nhpA)
2020/02/26(水) 08:29:53.13ID:bDSWeqSr0 オートマンだと思ってた
インド哲学かよ
インド哲学かよ
195デフォルトの名無しさん (ワッチョイ 0314-IyPa)
2020/02/26(水) 08:36:52.65ID:kXv4PxDr0 嘔吐マトン
196デフォルトの名無しさん (ワッチョイ 03d2-Cv5o)
2020/02/26(水) 12:11:34.52ID:GrI3XnzJ0197デフォルトの名無しさん (ワッチョイ ca2c-rVtL)
2020/02/26(水) 23:09:06.75ID:TmIxTRKQ0 Ruby on Rails 6 実践ガイド、黒田努、2019/12/20
Ruby on Rails 6 超入門、掌田津耶乃、2020/2/21
巨匠・掌田も、Rails 6 に参戦!
後は、山田祥寛・WINGSプロジェクトが、どうするか?
Ruby on Rails 6 超入門、掌田津耶乃、2020/2/21
巨匠・掌田も、Rails 6 に参戦!
後は、山田祥寛・WINGSプロジェクトが、どうするか?
198デフォルトの名無しさん (ワイーワ2 FF82-7qQN)
2020/02/27(木) 15:17:58.32ID:G6pyHvdgF 掌田の本は要らん
199デフォルトの名無しさん (ワッチョイ 4aa5-SiQa)
2020/02/28(金) 09:49:01.76ID:tB/cuWAa0 掌田津耶乃って何者? (Late 2012)
https://egg.5ch.net/test/read.cgi/mac/1349360916/
巨匠か?
Mac凋落と共に仕事を失った人間、とか書かれてんぞ
https://egg.5ch.net/test/read.cgi/mac/1349360916/
巨匠か?
Mac凋落と共に仕事を失った人間、とか書かれてんぞ
200デフォルトの名無しさん (ワッチョイ 4aa5-SiQa)
2020/02/28(金) 09:53:35.23ID:tB/cuWAa0201197 (ワッチョイ ca2c-rVtL)
2020/02/28(金) 13:58:28.72ID:GfVfgYuK0 多言語の3強が、掌田津耶乃・山田祥寛(WINGSプロジェクト)・柴田望洋。
他に、スッキリ・やさしい・猫でも・独習など
掌田は、その中でも断トツ!
多言語の入門書・フレームワーク・ゲームエンジンなど、
ここ数年で、20冊とかある
世界的に見ても、断トツ!
他に、スッキリ・やさしい・猫でも・独習など
掌田は、その中でも断トツ!
多言語の入門書・フレームワーク・ゲームエンジンなど、
ここ数年で、20冊とかある
世界的に見ても、断トツ!
■ このスレッドは過去ログ倉庫に格納されています
ニュース
- 【外国人問題】小野田紀美担当相「不法就労や不法滞在は許さない」 [シャチ★]
- 橋下徹氏 外務省幹部の訪中受け「口だけ番長」へ痛烈指摘 「喧嘩は日本の完敗…なんとかっこ悪い日本か」 [冬月記者★]
- 【野球】井端監督 大谷翔平、山本由伸らのWBCへの参加 「1日も早く返事ほしい」「待っててといっても、国内組が遅くなってしまう」★3 [冬月記者★]
- 中国で「クレしん」公開延期 対日報復、エンタメに波及 [蚤の市★]
- 経団連会長、日中は建設的対話を 経済3団体が高市首相と初会談も日中関係は話題に登らず… [BFU★]
- 【映画】『クレヨンしんちゃん』 中国で公開延期 対日報復、エンタメに波及 [冬月記者★]
- 日経時間外、5万円割れ 垂直落下始まる [402859164]
- サロピン💗行って来たらさWWWWWWWWWWWWWWWWWWWWWWWW
- 有識者「高市総理が発言を撤回したり、辞職するしかないと言っている人は、それで日中関係が今まで通りになると思ってる?」 [834922174]
- ウッドデッキで調子こいてたやついたじゃん
- 🦉エッホエッホ アンパンマンは猫舌って伝えなきゃ
- えんやすー
