[表示 : 全て 最新50 1-99 101- 201- 301- 401- 501- 601- 701- 801- 901- 1001- 2ch.scのread.cgiへ]
Update time : 08/13 18:23 / Filesize : 307 KB / Number-of Response : 1052
[このスレッドの書き込みを削除する]
[+板 最近立ったスレ&熱いスレ一覧 : +板 最近立ったスレ/記者別一覧] [類似スレッド一覧]


↑キャッシュ検索、類似スレ動作を修正しました、ご迷惑をお掛けしました

Ruby 初心者スレッド Part 66



1 名前:デフォルトの名無しさん [2020/01/04(土) 01:15:34.30 ID:X7t3Qsuc0.net]
プログラミング言語 Rubyについての、初心者向けスレです。質問・要望・雑談などをどうぞ

質問するときは、OSやRubyのバージョン、エラーメッセージを書いて下さい。
Ruby on Rails については、WEBプログラミング板で

前スレ
Ruby 初心者スレッド Part 65
https://mevius.5ch.net/test/read.cgi/tech/1545421414/

るりまサーチ (リファレンス検索)
rurema.clear-code.com/

Rubyist Magazine - るびま
jp.rubyist.net/magazine/

逆引きRuby
www.namaraii.com/rubytips/

Ruby コミュニティ公式
https://www.ruby-lang.org/
VIPQ2_EXTDAT: checked:vvvvv:1000:512:: EXT was configured

892 名前:デフォルトの名無しさん mailto:sage [2020/11/03(火) 23:15:09.60 ID:eTFEu/to0.net]
>>851
遅延評価

893 名前:デフォルトの名無しさん [2020/11/04(水) 10:08:06.70 ID:wF8lqQTTF.net]
Ruby、信者は、おことわり

894 名前:846 mailto:sage [2020/11/04(水) 23:31:34.08 ID:oOk5Pqvr0.net]
一部のメソッドで、遅延評価できる

instance method Enumerable#lazy
lazy -> Enumerator::Lazy

map/collect, flat_map/collect_concat
select/find_all
reject
grep
take, take_while
drop, drop_while

一貫性のため、ブロックを渡さないケースのみlazy
zip, cycle

895 名前:デフォルトの名無しさん mailto:sage [2020/11/04(水) 23:51:12.04 ID:lTVc+I7v0.net]
Enumerableは高階関数とともに脱初心者の一番の目安
この2つをパパっと作って使えるようになれば初心者は卒業

896 名前:846 mailto:sage [2020/11/05(木) 23:53:13.53 ID:lCe7ZMVj0.net]
Ruby の強みは、

Array, Hash, Enumerable, Enumerator の豊富なメソッドを、
メソッドチェーンでつなげていくプログラミング

どういうメソッドがあるのか、じっくり見ておくべき!

897 名前:デフォルトの名無しさん mailto:sage [2020/11/07(土) 23:50:43.02 ID:DktN1QwS0.net]
TIOBE Index、perlより下じゃん

898 名前:デフォルトの名無しさん mailto:sage [2020/11/08(日) 03:09:45.71 ID:YnyAcD/m0.net]
とうとうperlより下になったかw
誕生経緯w存在意義が…w

899 名前:デフォルトの名無しさん [2020/11/08(日) 10:17:52.02 ID:WJSuSySW0.net]
助成金ひっぱりんごビジネス

900 名前:デフォルトの名無しさん mailto:sage [2020/11/08(日) 10:46:31.03 ID:msYgn7TJM.net]
エンベデッド詐欺
ストリーム詐欺



901 名前:デフォルトの名無しさん mailto:sage [2020/11/08(日) 13:35:54.75 ID:P6MM9gKe0.net]
問題 Rubyを開発したのはだれか
答え 2ちゃんねる開発者でもあるひろゆき

根拠
https://programmercollege.jp/column/16456/

902 名前:デフォルトの名無しさん mailto:sage [2020/11/08(日) 16:28:40.45 ID:2D8TgavPM.net]
もうすっかりマイナー言語だな

903 名前:デフォルトの名無しさん [2020/11/09(月) 21:51:36.37 ID:A/fRbmyh0.net]
初めまして、現在の状況はRuby、Windows 10、 VSCode(エディターのみ)です。
以前Basic言語をやってましたがRubyの言語は勉強しました。
1.RubyでVSCodeの便利なデバッガーは何がいいですか。
2.RubyでVSCodeのインターネットまたは本等の使い方を勉強したい。
3.gemへのログインの方法を知りたい。
以上の3点知ってる人がいましたら教えてください、お願いします。

904 名前:デフォルトの名無しさん mailto:sage [2020/11/10(火) 00:15:08.25 ID:TotITmpP0.net]
>>791
に書いた

漏れは、Windows 10, WSL1, Ubuntu 18.04 で、
VSCode の拡張機能、Remote WSL も使う

WSL2 と言う、Hyper-v を使ったものもあるけど、
安定バージョンかどうかは、知らない

VSCodeの便利な拡張機能については、VSCodeのスレで聞いてください。
本は、徹底解説Visual Studio Code、本間咲来、2019/9

漏れのおすすめ拡張機能、Code Runner
右クリックメニューから、選択したコード、またはファイル全体を実行する

この設定をチェックしておく
Code-runner: File Directory As Cwd
Whether to use the directory of the file to be executed as the working directory.

デバッガーは漏れは、p, pp, tap などで見てる

VSCodeの拡張機能では、Ruby というものかな?
8個の拡張機能をパックした、Ruby extension pack とか?
漏れは、よく知らない

gem でインストールするのは、bundler だけ!
その後は全て、bundlerでインストールする

gemは、依存関係を考慮しなかったっけ?
gemでインストールしても、依存関係で動かないかも

gem, bundler については、検索して調べてください!

905 名前:デフォルトの名無しさん mailto:sage [2020/11/10(火) 07:08:10.23 ID:yOpM0tMJr.net]
Rubyで本の使い方を勉強するってどういう意味?

906 名前:デフォルトの名無しさん [2020/11/10(火) 12:09:50.03 ID:08CevRpcF.net]
Ruby 卒業しようぜ さっさと

907 名前:デフォルトの名無しさん [2020/11/12(木) 23:43:36.78 ID:9JGUhgPP0.net]
g++です
undefined reference to `ruby_init'
と表示されます
たぶんdllに入ってると思うのですがどこにあるのでしょうか?
よろしくお願いします

908 名前:デフォルトの名無しさん [2020/11/12(木) 23:44:28.91 ID:9JGUhgPP0.net]
versionは2.7.0です

909 名前:デフォルトの名無しさん mailto:sage [2020/11/12(木) 23:46:31.86 ID:1kfP87l60.net]
「dumpbin Windows」で検索!

910 名前:デフォルトの名無しさん [2020/11/12(木) 23:48:50.89 ID:9JGUhgPP0.net]
そもそもDLLが見つかりません
ほんとお願いします



911 名前:デフォルトの名無しさん mailto:sage [2020/11/13(金) 00:13:10.26 ID:1m9BN6xD0.net]
>>869
初心者には意味不明です

912 名前:862 mailto:sage [2020/11/13(金) 00:22:55.68 ID:LLS1FCOb0.net]
g++ は、GNU の GCC に含まれる、C++コンパイラ。
GNU で、Windows 向けのDLL を作るの?

RubyInstaller か?
MSYS2/MINGW の、RubyInstaller Development Kit(DevKit)有りか?
ridk install がどうしたこうしたとか?
よく知らないけど

https://rubyinstaller.org/downloads/

Windows 10, WSL, Linux でコンパイルする方法なら、
>>791
に書いたけど

913 名前:デフォルトの名無しさん mailto:sage [2020/11/13(金) 00:28:08.04 ID:1m9BN6xD0.net]
c++にruby_initを組み込んでみたいです
コンパイルエラーがでます
さっぱりわかりません

914 名前:デフォルトの名無しさん mailto:sage [2020/11/13(金) 00:34:11.29 ID:1m9BN6xD0.net]
#include <ruby.h>

int main() {
// Rubyインタプリタの初期化
ruby_init();

// スクリプトの実行
rb_eval_string("print 'Hello World!'");

// Rubyインタプリタのクリーンアップ
ruby_cleanup(0);
}

915 名前:デフォルトの名無しさん mailto:sage [2020/11/13(金) 00:55:32.20 ID:4qY0TlDt0.net]
「初心者」のやることじゃねえ。w

916 名前:デフォルトの名無しさん mailto:sage [2020/11/13(金) 01:16:13.61 ID:LLS1FCOb0.net]
正気?
初心者が、こんな事をする訳ないだろ

C/C++ を、数年以上やってからの話

917 名前:デフォルトの名無しさん mailto:sage [2020/11/13(金) 01:17:12.74 ID:1m9BN6xD0.net]
そう言わずにコンパイルできる方法を教えてください

918 名前:デフォルトの名無しさん mailto:sage [2020/11/13(金) 01:52:06.56 ID:LLS1FCOb0.net]
ffi は C や C++ ように作成された共有ライブラリを、
Ruby で扱うことができるようにするためのライブラリです

libffi を使っているので、事前にインストールが必要です。
NativeExtensions を直接扱わずに、C を操作できます

ruby ffi 入門
https://hawksnowlog.blogspot.com/2019/0

919 名前:4/getting-started-ruby-ffi.html []
[ここ壊れてます]

920 名前:デフォルトの名無しさん mailto:sage [2020/11/13(金) 01:57:04.06 ID:1m9BN6xD0.net]
その逆が知りたいわけで。。。



921 名前:デフォルトの名無しさん mailto:sage [2020/11/13(金) 02:03:07.72 ID:LLS1FCOb0.net]
C/C++ から、Ruby を呼ぶ方法か

検索すれば?

922 名前:デフォルトの名無しさん mailto:sage [2020/11/13(金) 02:06:45.73 ID:1m9BN6xD0.net]
検索したんですけど見つかりませんでした

923 名前:デフォルトの名無しさん mailto:sage [2020/11/13(金) 03:33:11.86 ID:LLS1FCOb0.net]
Windows では、無理じゃない?

Linux で探した方が良いかも

924 名前:デフォルトの名無しさん mailto:sage [2020/11/13(金) 03:35:06.10 ID:ZgWaq86m0.net]
Windows使ってるってだけで教祖様の号令一下で石投げられるのがRubyコミュニティだからな
Pythonにしとき

925 名前:デフォルトの名無しさん mailto:sage [2020/11/13(金) 04:42:47.05 ID:b8ug5Yf30.net]
C/C++ から Python を呼ぶ方法なんて袋叩きに逢うのが
Python コミュニティですが、それがなにかどうかされますた???

926 名前:デフォルトの名無しさん mailto:sage [2020/11/13(金) 04:53:52.48 ID:1m9BN6xD0.net]
難しそうなのであきらめました

927 名前:デフォルトの名無しさん mailto:sage [2020/11/13(金) 06:40:07.62 ID:LLS1FCOb0.net]
普通は、Ruby から、C 製のNArray みたいな高速なライブラリを呼ぶ

逆に、Cから、Rubyを呼ぶ事はない。
普通に、Rubyコマンドを呼べば良いだけ

例えば、Rubyスクリプト内で、Python3 コマンドを呼ぶ

str = `python3 -c 'print( "あ" )'`

puts str #=> あ

928 名前:デフォルトの名無しさん mailto:sage [2020/11/13(金) 07:00:14.39 ID:PGsPGVPV0.net]
まつもと:それから「Backquotes」の地上げも考えていたんですけども、Backquotesをするとシェルで実行して結果を文字列で返すってやつですね。

(参加者から「いける、いける」の声)

まつもと:なんかあの辺で「いける、いける」って言ってる人がいますけど、信じない(笑)。なので、これももうちょっと先で、もう1回くるかもしれませんが、少なくとも3.0では死なないということです。
https://logmi.jp/tech/articles/321308

バージョンによって使えてたクォートが使えなくなったりするクソ言語

929 名前:デフォルトの名無しさん mailto:sage [2020/11/13(金) 08:51:10.39 ID:LLS1FCOb0.net]
Python 2/3 のコミュニティーの分断は、地獄だった

だからRubyは、2/3 で絶対に分断させない!

930 名前:デフォルトの名無しさん mailto:sage [2020/11/13(金) 09:27:17.47 ID:PGsPGVPV0.net]
マイナーバージョンで細切れ分断してるからな。
その辺は抜かりない。



931 名前:デフォルトの名無しさん [2020/11/13(金) 12:02:41.44 ID:RWm0omqa0.net]
>>884
>C/C++ から Python を呼ぶ方法なんて袋叩きに逢うのが Python コミュニティ
初めて聴いたけどどこ情報?

932 名前:デフォルトの名無しさん [2020/11/13(金) 12:09:12.42 ID:RWm0omqa0.net]
funktor.org/programming/cpp/embedding-ruby

933 名前:デフォルトの名無しさん [2020/11/13(金) 14:17:08.52 ID:/AMzz1sP0.net]
>>883
「私がWindowsを嫌っているのではなく、WindowsがRubyを嫌っているのだ。だからWindowsを使ってはいけない。」と教組様が言ってたけど。

934 名前:デフォルトの名無しさん [2020/11/13(金) 14:22:10.08 ID:RWm0omqa0.net]
教祖も言ってるけど
windowsならrubyやめてpython使う方が楽ちん

935 名前:デフォルトの名無しさん mailto:sage [2020/11/13(金) 14:47:22.41 ID:b3aeLCbPa.net]
エラーが出たので助けてほしいです…
ターミナルでrails db:createをするの下記のような文が出ます…

Traceback (most recent call last):
4: from bin/rails:3:in `<main>'
3: from bin/rails:3:in `load'
2: from /Users/tech-camp/projects/tweet/bin/spring:10:in `<top (required)>'
1: from /Users/tech-camp/projects/tweet/bin/spring:10:in `read'
/Users/user/projects/tweet/bin/spring:10:in `read': No such file or directory @ rb_sysopen - /Users/user/projects/tweet/Gemfile.lock (Errno::ENOENT)

936 名前:デフォルトの名無しさん mailto:sage [2020/11/13(金) 14:49:36.90 ID:b3aeLCbPa.net]
エラーが出たので教えてほしいです…
ターミナルでrails db:createをしたらこのようになりました…


Traceback (most recent call last):
4: from bin/rails:3:in `<main>'
3: from bin/rails:3:in `load'
2: from /Users/user/projects/tweet/bin/spring:10:in `<top (required)>'
1: from /Users/user/projects/tweet/bin/spring:10:in `read'
/Users/user/projects/tweet/bin/spring:10:in `read': No such file or directory @ rb_sysopen - /Users/user/projects/tweet/Gemfile.lock (Errno::ENOENT)

937 名前:デフォルトの名無しさん mailto:sage [2020/11/13(金) 15:16:02.12 ID:9KKZC7FrM.net]
bundle installしてないとか

938 名前:デフォルトの名無しさん mailto:sage [2020/11/13(金) 15:45:24.78 ID:b3aeLCbPa.net]
まさにそれでした…!
ありがとうございます…!

939 名前:デフォルトの名無しさん mailto:sage [2020/11/13(金) 17:04:48.25 ID:b4HB1/RK0.net]
>>867
$ export PKG_CONFIG_

940 名前:PATH="$HOME/.rbenv/versions/2.7.2/lib/pkgconfig"
$ gcc $(pkg-config --cflags --libs ruby-2.7) hello.c -o hello

上の例はWindowsじゃなくmacOSでrbenv使ってる環境だけど
Windowsでも.pcファイルあると思うからpkg-configで必要なオプション取得すれば良いと思うよ
[]
[ここ壊れてます]



941 名前:デフォルトの名無しさん [2020/11/17(火) 15:37:28.16 ID:+8mZ0oHh0.net]
拡張ライブラリについての質問です
一次元配列の場合はデータを取得できたんですけど、
二次元配列の場合はどうすればいいんでしょうか?
よろしくお願いします

//一次元配列の場合
num = rb_ary_entry(p_val, offset);
a = FIX2INT(num);

942 名前:デフォルトの名無しさん mailto:sage [2020/11/17(火) 18:11:21.31 ID:PuHDpULa0.net]
VALUE, FIX2INT, RARRAY, rb_ary_entry

これは、Ruby なのか?
奇妙

943 名前:デフォルトの名無しさん mailto:sage [2020/11/17(火) 18:42:35.55 ID:PuHDpULa0.net]
Ruby では、ary[offset] だろ。
2次元配列なら、

ary = [ [1, 2], [11, 12], [21, 22] ]

ary[0][1] = 99
p ary #=> [[1, 99], [11, 12], [21, 22]]

p ary.length #=> 3
p ary[0].length #=> 2

944 名前:デフォルトの名無しさん mailto:sage [2020/11/17(火) 19:23:04.59 ID:yKNV/xx90.net]
>>899
配列要素オブジェクトを多段にRArray*にキャストしたらええんちゃうの?知らんけど。

https://docs.ruby-lang.org/ja/latest/function/rb_ary_entry.html
https://docs.ruby-lang.org/ja/latest/function/RARRAY.html

>>900
知らんかったら黙っとくか、ググるくらいしろ。

945 名前:デフォルトの名無しさん [2020/11/18(水) 19:49:47.73 ID:XrXdqU1w0.net]
やっと解りました。。。
どうもありがとうございました!
ary = [[0,1],[2,3],[4,5]]


num0 = rb_ary_entry(ary_val, 2);
num1 = rb_ary_entry(num0, 0);
a = FIX2INT(num1);

num0 = rb_ary_entry(ary_val, 2);
num1 = rb_ary_entry(num0, 1);
b = FIX2INT(num1);

sprintf(buf, "%d , %d", a, b);
MessageBox(NULL, buf, "", MB_OK);

946 名前:デフォルトの名無しさん [2020/11/24(火) 05:57:29.80 ID:tcZG3tlz0.net]
ocraを実行してexe化したのですが、
libssp-0.dllがないというエラーが出てフリーズしました
放っておけばそのうちocraがバージョンアップで対応してくれるんでしょうか?

プログラムは、

puts "hoge"

だけです

947 名前:デフォルトの名無しさん mailto:sage [2020/11/24(火) 06:47:14.40 ID:/T/Ll6K6r.net]
フォルダ名に日本語混ざってるとocra使えないからそれかもね

948 名前:デフォルトの名無しさん mailto:sage [2020/11/24(火) 06:50:52.14 ID:/T/Ll6K6r.net]
日本語Windows環境ならocraよりneri使ったほうがいいと思うよ

949 名前:デフォルトの名無しさん [2020/11/24(火) 07:16:55.53 ID:tcZG3tlz0.net]
どちらもだめでした
MinGWが64bitなのがいけないいんですかね?
neriの場合は、「アプリケーションを正しく起動できませんでした」
と出ます
日本語は使ってないですよ

950 名前:デフォルトの名無しさん mailto:sage [2020/11/24(火) 09:00:20.18 ID:gfNKbZsOa.net]
最近同じエラー吐いてる人が多いからマルチバイト文字とかじゃなくてocraのバグじゃね
今つっかかってる場所はlibssp-0.dllの有無
libssp-0.dll入手して適切なフォルダに入れれば動くかもしれないし、それを超えてもまた次のエラーメッセージ出るかもしれない

こういう場合むしろ古いバージョンのocraやrubyを使ったほうが正常に動いたりするよ
特定のバージョンとの相性で上手く動作したらむやみにアップデートしないことな



951 名前:デフォルトの名無しさん mailto:sage [2020/11/24(火) 09:01:18.97 ID:XRJpBbZB0.net]
ひょっとして、フォルダ名・PC のユーザー名に、日本語を使っていないか?

>neriの場合は、「アプリケーションを正しく起動できませんでした」
もっと正確なエラーメッセージを取得して、それで検索すれば?

どういう理由で起動できないのかを、知りたい
色々な理由があるから、このメッセージだけでは原因を特定できない

Linux みたいに、Windows には、OS のログとか無いのか?

952 名前:デフォルトの名無しさん mailto:sage [2020/11/24(火) 09:46:40.72 ID:gfNKbZsOa.net]
日本語じゃないって否定してんのに直前のレスも読めねーのか
https://stackoverflow.com/questions/64368535/ruby-compile-with-ocra-error-libssp-0-dll-not-found

Maybe you don't have the libssp-0.dll file installed.
You can download it from https://www.dll-files.com/libssp-0.dll.html
then placing the file where the error says.

953 名前:デフォルトの名無しさん [2020/11/24(火) 12:56:57.47 ID:tcZG3tlz0.net]
neriのエラー
アプリケーションを正しく起動できませんでした(0xc000007b)。[OK]をクリックしてアプリケーションを閉じてください。

libssp-0.dllはMinGWでgetするdllです

バグか64bitに対応してないかのどちらかだと思います
暫く様子を見ることにしました
あと古いバージョンも試してみます

954 名前:デフォルトの名無しさん mailto:sage [2020/11/24(火) 20:33:08.36 ID:GlJ0k2Kgr.net]
こっちは64bit windows10でneri使えてるけどなぁ

955 名前:デフォルトの名無しさん [2020/11/25(水) 06:01:29.82 ID:vPLi7EhQ0.net]
2.4で動きました
しかし自作のsoファイルをソースに含めると
ocra test.rb --dll ddddd.so

実行すると
FATAL ERROR: Bad signature in executable.

956 名前:デフォルトの名無しさん mailto:sage [2020/11/25(水) 12:15:29.69 ID:BeZXjuPe0.net]
自分でエラーを作っているから、原因は君にしか分からない

そのエラーメッセージで検索すれば?

957 名前:デフォルトの名無しさん [2020/11/25(水) 12:51:53.26 ID:BeZXjuPe0.net]
文字列内にある、URL を抜き出す、URI.extract、
または、正規表現のURI.regexp は、

Ruby 2.2 から obsolete になっているけど、
それに代わるものは、何ですか?

require 'uri'

URI.extract("文字列", ['http','https'] )

p URI.regexp =~ "www.ruby-lang.org/" #=> 0

958 名前:デフォルトの名無しさん [2020/11/25(水) 16:47:47.83 ID:vPLi7EhQ0.net]
>>914
neriでexe化できました
ocraは相変わらずですが
ありがとうございました!

959 名前:(u_・y) mailto:sage [2020/11/26(木) 17:59:03.02 ID:ACzSTlzfa.net]
>>915
text ="
https://i.imgur.com/UJbFSti.jpg
www.ruby-lang.org/
"
text.scan(URI.regexp).map { Regexp.last_match }.each { |uy|
puts uy
}

960 名前:デフォルトの名無しさん [2020/11/27(金) 02:05:30.36 ID:lOUpIwv20.net]
>>917
出力
www.ruby-lang.org/
www.ruby-lang.org/

2回とも、同じものが表示されるから、ダメ!



961 名前:デフォルトの名無しさん mailto:sage [2020/11/27(金) 07:36:58.12 ID:8Z+4V8c6r.net]
text.scan(URI.regexp){|v| puts '%s://%s' % [v.shift, v.compact.join]}

962 名前:916 mailto:sage [2020/11/27(金) 08:41:48.24 ID:lOUpIwv20.net]
text.scan( URI.regexp ){ |v| p v }

出力
[ "https", nil, nil, "i.imgur.com", nil, nil, "/UJbFSti.jpg", nil, nil ]
[ "http", nil, nil, "www.ruby-lang.org", nil, nil, "/", nil, nil ]

この奇妙な、nil は何?
それに、:// が飛ばされている

963 名前:(u_・y) mailto:sage [2020/11/27(金) 16:29:26.66 ID:6fRHx8hla.net]
てかURI.regexpもobsoluteだった

964 名前:デフォルトの名無しさん mailto:sage [2020/11/27(金) 17:54:13.89 ID:tPIe9OcJ0.net]
https://bugs.ruby-lang.org/issues/2542
はっきりした理由は書いてないけど
RFC2396自体がobsoleteになって新しくRFC3986/3987対応のregex考えるの大変だから
URI.extract/URI.regexpはobsoleteになったように見える

なので今の仕様で問題ないなら使えばいいんじゃないかって気がする
warningを避けたいならURI::DEFAULT_PARSER.extractを直接使ってもいいけど中身は同じ
もう少しちゃんとしたのがよければtwitter-textのExtractor.extract_urls

965 名前:デフォルトの名無しさん mailto:sage [2020/11/27(金) 21:04:45.51 ID:8Z+4V8c6r.net]
qiitaにRFC3986対応の正規表現とか出てるけどそんな大変なのかね
詳しく知らんからなんも言えないけど

966 名前:デフォルトの名無しさん mailto:sage [2020/11/27(金) 21:32:51.26 ID:OZT1ua320.net]
多言語対応まで考えるとややこしいから、すっぱりあきらめたんやろ。

967 名前:デフォルトの名無しさん [2020/11/28(土) 11:23:25.42 ID:FGpMIdZG0.net]
RFC3986に準拠したURI検証用正規表現
https://qiita.com/shimataro999/items/fced9665fa970c009c1e

HTTP/HTTPS の所には、こういうのが出てくるから、これらが特殊文字なんだろう。
もっと簡単な正規表現で良い

終了点を知りたい。ある文字が出たら、そこで終わりみたいな。
URL で使われない文字

^https?:\/\/

|[!$&'()*+,;=]|:)*@)?
|[!$&'()*+,;=])*)(:\d*)?
|[!$&'()*+,;=]|:)+
|[!$&'()*+,;=]|[:@]))*)*

[-._~]

968 名前:デフォルトの名無しさん [2020/11/30(月) 03:48:29.64 ID:r8rQ87Qr0.net]
コンテンツをファイルに書きこみながら、同時にハッシュ値も求める場合、
Go では、io.MultiWriter で、2回読み込まずに処理できるらしいが、

Ruby にも、こういう機能がありますか?

969 名前:デフォルトの名無しさん [2020/11/30(月) 20:22:04.13 ID:G81cwQG00.net]
RailsチュートリアルをRubyの言語自体の入門書としてみた場合、一般的な入門書の何割ぐらいをカバーしてるものなのですか?

970 名前:デフォルトの名無しさん mailto:sage [2020/11/30(月) 21:45:48.29 ID:r8rQ87Qr0.net]
Rails チュートリアルは軽く「たのしいRuby」の10倍以上はある

MVC は、構造・デザインパターンなどを学ぶのが大変

おまけに、Linux・サイト製作の基本知識とか、
データベース・ERB・HTML・CSS/SASS・JavaScript・Webpack・テストとか



971 名前:デフォルトの名無しさん mailto:sage [2020/11/30(月) 22:12:15.34 ID:ifp6ptD/0.net]
そして、それでいて文法やメソッドなどの基礎的なところをすっとばしている可能性が。w

要するに、方向性が違うので、どっちが他方をどう含んでるかは何とも言えんやろ。

972 名前:926 mailto:sage [2020/11/30(月) 22:44:30.64 ID:r8rQ87Qr0.net]
入門書で文法を学んだら、Enumerable のメソッドの内容を見てから、

プログラミングのお題スレの問題を解いたり、
テキスト処理などを少しやった方が良いと思う

Rails チュートリアルは、時間が掛かるから

まあでも、ウェブサイトの構築運用の最短距離は、Linux・AWS・Rails。
バックエンド・エンジニアなら、Linux・AWS・Ruby

973 名前:デフォルトの名無しさん mailto:sage [2020/12/01(火) 01:00:57.88 ID:bLJR8T1fa.net]
3割くらいじゃね
あと別にrubyの魔術コードを書けたり読めたりしなくても生きていける

974 名前:デフォルトの名無しさん mailto:sage [2020/12/01(火) 21:27:16.65 ID:gqqffooe0.net]
ちょ、DateTimeがdeprecatedになってるんですが・・・
これいつから?

975 名前:デフォルトの名無しさん mailto:sage [2020/12/01(火) 23:02:19.70 ID:uBfLZ+080.net]
さすがRuby!w
おどろきの互換性。

976 名前:デフォルトの名無しさん mailto:sage [2020/12/01(火) 23:28:41.06 ID:KOqkaYUf0.net]
wwwwww

977 名前:デフォルトの名無しさん mailto:sage [2020/12/02(水) 10:02:26.56 ID:WhLorZrAM.net]
2.5からだね
なお英語版ドキュメントへの記載を忘れていたためRails勢には全く認知されておらず最近になって混乱を引き起こしている模様
これがRubyクォリティ

978 名前:デフォルトの名無しさん mailto:sage [2020/12/02(水) 10:21:56.70 ID:s/Tj40p50.net]
な?ww
マイナーバージョンアップで互換性崩れるだろ?www

979 名前:デフォルトの名無しさん mailto:sage [2020/12/02(水) 12:09:59.52 ID:X5mOhjXr0.net]
>>935
2.5からというソースある?


980 名前:9末に特にアナウンスもなく変更されてるように見えるんだけど
https://github.com/rurema/doctree/commit/0645aad1d9107fa4020269f12ca9a21ec6bd859c

deprecatedになっても削除されるものじゃないから実害はないんだけど
さすがにこれはやり方が乱暴
[]
[ここ壊れてます]



981 名前:デフォルトの名無しさん [2020/12/02(水) 12:39:09.20 ID:vDg6xkSY0.net]
DateTime は非推奨で、代わりに、Time を使うこと。
つまり、Date, Timeを使う

DateTime < Date < Comparable

Time < Comparable

982 名前:(u_・y) [2020/12/02(水) 17:21:15.67 ID:LINF+1vva.net]
https://docs.ruby-lang.org/ja/2.4.0/class/DateTime.html
https://docs.ruby-lang.org/ja/2.5.0/class/DateTime.html

983 名前:デフォルトの名無しさん mailto:sage [2020/12/02(水) 22:11:56.65 ID:n0CYjqknr.net]
>>936
互換性は崩れてないじゃん

984 名前:デフォルトの名無しさん mailto:sage [2020/12/02(水) 23:36:25.61 ID:26rcFOAE0.net]
deprecatedで混乱するもんなの?
廃止じゃないでしょ?非推奨でしょ?

そりゃ書き換えないといけないが
普通deprecatedになってから書き換えるでしょ?

985 名前:デフォルトの名無しさん mailto:sage [2020/12/02(水) 23:39:12.64 ID:26rcFOAE0.net]
Ruby開発勢ならなんでいきなりdeprecatedになってるんだ?って
なるかもしれないけど、Rails勢は所詮Ruby使ってるだけの人たちだし

986 名前:デフォルトの名無しさん mailto:sage [2020/12/03(木) 03:48:48.84 ID:1lle3h49a.net]
その身朽ちても仕様変更の激しい言語の代名詞としてruby生き残ったりして

987 名前:デフォルトの名無しさん mailto:sage [2020/12/03(木) 03:50:09.86 ID:QOvIykSz0.net]
言語界のテセウスの船wwww

988 名前:デフォルトの名無しさん mailto:sage [2020/12/03(木) 04:49:29.49 ID:GO6EbsS10.net]
rails自体によるdeprecatedなんていくらでもあるしそんなに騒ぐようなものでは無い

989 名前:デフォルトの名無しさん mailto:sage [2020/12/03(木) 09:35:07.22 ID:QOvIykSz0.net]
名実ともにrailsが本体、rubyはそのバッテリーだなwww

990 名前:デフォルトの名無しさん mailto:sage [2020/12/03(木) 10:20:11.90 ID:2qogV6iv0.net]
>>939
ソースの https://github.com/rurema/doctree/blob/master/refm/api/src/date/DateTime では
バージョンに関係なく deprecated になってるから、まだ変更が反映されてないだけですね

require 'open-uri'
%W[ 2.3.0 2.4.0 2.5.0 2.6.0 2.7.0 ].each{|ver|
open( "https://docs.ruby-lang.org/ja/#{ver}/class/DateTime.html" ) {|f|
puts "#{ver} #{( f.read.force_encoding( Encoding::UTF_8 ).match( /\bdeprecated\b/ ) )? "true ": "false"} #{f.last_modified.localtime.strftime( '%Y/%m/%d %T %z' )}"
}
}
#=>
2.3.0 false 2018/08/19 18:16:47 +0900
2.4.0 false 2020/04/10 09:17:55 +0900
2.5.0 true 2020/10/25 09:17:38 +0900
2.6.0 true 2020/10/25 09:17:11 +0900
2.7.0 true 2020/10/25 09:16:43 +0900

>>937 仰るとおり、9月の変更が反映されているかどうかのようです



991 名前:デフォルトの名無しさん mailto:sage [2020/12/03(木) 12:06:44.28 ID:7EFKRkup0.net]
先日のURIのやつもそうだけど、過剰でもう手におえなさそうな実装を切ろうとしてんのかな。

来るべきRuby3に向けてか?

992 名前:デフォルトの名無しさん mailto:sage [2020/12/03(木) 12:09:49.47 ID:Glofd6fS0.net]
>>947
なるほど、2.4はサポート切れてるから2.5以降だけリファレンスを更新したんだろうね

Railsとか本番で使うシステムは特殊な用途以外はTimeかTimeWithZone使ってるから別にいいんだろうけど
ちょっとしたツールでactivesupport使うまでもないようなものはTimeじゃなくDateTime使うことが多かったから
急にdeprecatedになってて驚いた






[ 続きを読む ] / [ 携帯版 ]

前100 次100 最新50 [ このスレをブックマーク! 携帯に送る ] 2chのread.cgiへ
[+板 最近立ったスレ&熱いスレ一覧 : +板 最近立ったスレ/記者別一覧](;´∀`)<307KB

read.cgi ver5.27 [feat.BBS2 +1.6] / e.0.2 (02/09/03) / eucaly.net products.
担当:undef