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


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

Ruby 初心者スレッド Part 64



1 名前:デフォルトの名無しさん [2018/09/01(土) 19:25:16.66 ID:wk35+pf/.net]
プログラミング言語Rubyについての、初心者向けスレです。質問・要望・雑談などどうぞ。
質問するときは、OSやRubyのバージョン、エラーメッセージを書いたほうがいいお
Ruby on RailsについてはWEBプログラミング板で

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

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

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

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

Ruby コミュニティ公式
https://www.ruby-lang.org/

902 名前:デフォルトの名無しさん mailto:sage [2018/11/22(木) 21:14:57.62 ID:XJTx/PKt.net]
VSCodeはカーソル移動でホームポジションから手を離さないといけないのがなー
Ma

903 名前:c使えばいいんだろうけど、そのためだけにMacってのも []
[ここ壊れてます]

904 名前:デフォルトの名無しさん mailto:sage [2018/11/22(木) 21:58:47.54 ID:YYHdauiZ.net]
VimやEmacsのキーバインド使えばいいでしょ
コマンド入力による操作体系が強力だから少なくともRubyMineに比べたらキーボード中心で使いやすいし

905 名前:デフォルトの名無しさん mailto:sage [2018/11/23(金) 23:37:21.14 ID:uhwEdrvZ.net]
別にAutoHotkeyでキーバインド変更しているから無問題

906 名前:デフォルトの名無しさん mailto:sage [2018/11/24(土) 01:21:45.23 ID:PRCdABA7.net]
MacのキーバインドをWindowsやLinuxでも採用すればよかっただけなのにな
なんでわざわざ変えたんだろう

907 名前:デフォルトの名無しさん mailto:sage [2018/11/24(土) 06:37:15.09 ID:emfrr2Lm.net]
>>873
歴史的に見ればMacの方が後だよ。
Macの今のキーバインドが出来たのは2000年ごろだ

908 名前:デフォルトの名無しさん mailto:sage [2018/11/24(土) 17:44:17.91 ID:YsJMMDpU.net]
動的型付けの衰退 - Oracle
https://www.oracle.com/webfolder/technetwork/jp/javamagazine/Java-JF18-editorial.pdf

このオラクルのPDFだけど
大体の人が動的型に言いたかったであろうことが
大変綺麗にまとまってて良かったよ

909 名前:デフォルトの名無しさん mailto:sage [2018/11/24(土) 18:33:18.63 ID:IZ0lTZaS.net]
>>874
1984 Macintosh
1985 Windows
1991 Linux

910 名前:デフォルトの名無しさん mailto:sage [2018/11/24(土) 18:52:51.51 ID:PRCdABA7.net]
>>876
VSCodeの話しだよね?



911 名前:デフォルトの名無しさん mailto:sage [2018/11/24(土) 19:18:47.82 ID:b7tmfxF4.net]
>>878
1984年ごろのMacのキーバインドはホント糞だったよ

912 名前:デフォルトの名無しさん mailto:sage [2018/11/24(土) 19:20:18.07 ID:b7tmfxF4.net]
OSXからだよ。Unix系の素晴らしいキーバインドを取り入れたのは
Unixは最初から素晴らしかったからね

913 名前:デフォルトの名無しさん mailto:sage [2018/11/24(土) 19:34:35.47 ID:VBkVIhNz.net]
UNIXじゃなくてEmacsだろ
今やUNIXエディタ戦争はVimに完敗し、SublimeやAtomでMacの独壇場だったモダンエディタ系も今やMSの天下
RailsがMacにプリインストールされてイケイケだった頃のRubyが懐かしいな

914 名前:デフォルトの名無しさん [2018/11/25(日) 04:38:13.34 ID:moheOgid.net]
viって使わないとコマンド忘れちゃうね
仕方ないのでnano使ってる

915 名前:デフォルトの名無しさん [2018/11/25(日) 19:49:13.96 ID:wWU/NTaG.net]
教本に書いてあるクラス定義の例題プログラムが全然理解できない……つらい……

916 名前:デフォルトの名無しさん mailto:sage [2018/11/25(日) 20:38:08.40 ID:mH6GThxQ.net]
プログラミングには向き不向きがあるから諦めることも大事
向いてない奴が頑張っても生涯クソブラック企業で奴隷だぞ

917 名前:デフォルトの名無しさん mailto:sage [2018/11/25(日) 23:26:13.89 ID:bdma9Nzw.net]
Ruby でオブジェクト指向を勉強するのが、一番よい

Rubyでは、あらゆるものがObject だから、Class 自体もObject

self が、Classからnew したインスタンスを指すのが普通だが、
特異メソッドの文脈では、Class自信を指す

どの文脈なのか注意する。
Classの地の文では、selfはClassだから、ここでは特異メソッドになる。
インスタンスの文脈にならない

@インスタンス変数と、@@クラス変数の他に、@クラスインスタンス変数という変態もある。
これは、selfがClassの文脈で、@を使った場合に起こる。
この場合、クラス自身のインスタンス変数となり、サブクラスへ継承されない

たのしいRuby 第5版、2016
を読んだら、以下の2冊を読むとよい

Effective Ruby、2015
改訂2版 Ruby逆引きハンドブック、2018/8/28

918 名前:デフォルトの名無しさん mailto:sage [2018/11/25(日) 23:32:04.98 ID:+Rx2UR4K.net]
> Rubyでは、あらゆるものがObject だから
あれ?Rubyってメソッドはオブジェクトだっけ?

JavaScriptはメソッドがオブジェクトだから
function foo() {}
console.log(foo.name)
とかできるけど、Rubyって無理だったよね?

919 名前:デフォルトの名無しさん mailto:sage [2018/11/25(日) 23:35:25.58 ID:OqmjDJWv.net]
>>885
Rubyはメソッドもオブジェクトだ

920 名前: []
[ここ壊れてます]



921 名前:デフォルトの名無しさん mailto:sage [2018/11/26(月) 00:11:24.80 ID:d6jj4yVL.net]
>>886
いやいや
Procと同様ちがうなにか

922 名前:デフォルトの名無しさん mailto:sage [2018/11/26(月) 00:22:33.42 ID:4Su3JOMS.net]
Rubyではブロック自体や単独のメソッド参照はオブジェクトではないよ
第一級関数ではない

923 名前:デフォルトの名無しさん [2018/11/26(月) 00:35:00.14 ID:kTSSWZBP.net]
block、proc、lamdaを華麗に使い分けるRuby!さすが!
全部functionでやるjavascriptは汚い!さすがjavascriptきたない!

924 名前:デフォルトの名無しさん mailto:sage [2018/11/26(月) 00:45:36.82 ID:nvtZwlw2.net]
処理は、わざと第一級関数・オブジェクトにしなかった

オブジェクトはレシーバー・主体で、メソッドはそれに対する操作。
この区別を厳格にした

そして、メソッドを持ち運ぶ場合だけ、block, proc, lamda に変換する。
基本は、クロージャの実装ある、block

JavaScript では、関数オブジェクトとは何なのか?
抽象的すぎて、よくわからない

925 名前:デフォルトの名無しさん mailto:sage [2018/11/26(月) 00:57:52.75 ID:woCsHcs5.net]
>>890
この池沼にも理解できるように意図して設計したとしたらRubyは凄いわ
まあRubyの obj.method がメソッドオブジェクトを返さない実際の理由は、
括弧を省略することで属性のように見えるというアイデアに固執したせいなんだけど

926 名前:デフォルトの名無しさん mailto:sage [2018/11/26(月) 02:24:34.07 ID:DMixgTsv.net]
>>891
固執ってどこからでてきたの?

927 名前:デフォルトの名無しさん mailto:sage [2018/11/26(月) 03:44:29.07 ID:nvtZwlw2.net]
ローカル変数・無引数メソッドの、区別が難しい!

無引数メソッドに代入すると、新しいローカル変数が作られて、メソッドが隠される。
ただし、ローカル変数が見えないスコープでは、メソッドが参照されるが、
f( ) のように、( )を付けるとメソッドが呼ばれる

def f( ) "method" end
p f #=> "method"

f = "var"
p f #=> "var"

f = "var"
p f( ) #=> "method"

928 名前:デフォルトの名無しさん mailto:sage [2018/11/26(月) 08:10:20.68 ID:AloVWQrN.net]
>>889
アロー関数知らんのか

RubyにもUnboundMethodがあることはある。

929 名前:デフォルトの名無しさん [2018/11/26(月) 09:09:15.66 ID:mqDjQZG/.net]
>>894
知ってるが。
>>889に(function(){}).bind(this)のシンタクティックシュガーを取り立てて書かなきゃならない意味とは?
マウント取りたかったのかな?

930 名前:デフォルトの名無しさん mailto:sage [2018/11/26(月) 09:21:23.12 ID:sgq1LDCF.net]
Rubyってメソッドはオブジェクトじゃないんだな



931 名前:デフォルトの名無しさん mailto:sage [2018/11/26(月) 11:04:39.94 ID:DMixgTsv.net]
メソッドをオブジェクト化することはできるけど、メソッド自体は違うね

932 名前:デフォルトの名無しさん mailto:sage [2018/11/26(月) 11:22:24.16 ID:jCGZ4ioD.net]
根本的な思想が違うんだよ
obj.method(arg)
JavaScript : obj から method プロパティの値を取り出し、その値を関数オブジェクトと見做して呼び出す。
Ruby : obj に「method という名前のメソッドを呼び出せ」というメッセージを送る。それにどう反応するかは obj の勝手である。
ただし、Rubyは内部的にはメソッドがオブジェクトとして実装されてたりしてごっちゃになってるので一貫性に欠ける無茶苦茶な仕様になってる。

933 名前:デフォルトの名無しさん [2018/11/26(月) 11:26:02.21 ID:mqDjQZG/.net]
>>898
(x => x * 2)(3)
//=> 6

934 名前:デフォルトの名無しさん mailto:sage [2018/11/26(月) 11:34:05.04 ID:DMixgTsv.net]
>>899
別に無茶苦茶ではないけど
何を持って無茶苦茶と言ってるんだろう?
俺様の感性に合わないこと?

935 名前:デフォルトの名無しさん [2018/11/26(月) 12:05:56.16 ID:mqDjQZG/.net]
>>900
なんで俺に言うんだよ無茶苦茶って言ってる>>898に言え

936 名前:デフォルトの名無しさん mailto:sage [2018/11/26(月) 12:36:19.94 ID:DMixgTsv.net]
>>901
すまぬ
純粋なアンカミス

937 名前:デフォルトの名無しさん mailto:sage [2018/11/26(月) 12:46:09.25 ID:sgq1LDCF.net]
とりあえず、Rubyは全てがオブジェクトだという嘘をつくのはやめろって言う話

938 名前:デフォルトの名無しさん mailto:sage [2018/11/26(月) 12:54:43.65 ID:8VBeLDjH.net]
オブジェクトだったら勝ちみたいな風潮なんなんだよ <

939 名前:デフォルトの名無しさん mailto:sage [2018/11/26(月) 12:56:49.77 ID:sgq1LDCF.net]
知らんよ。なぜかRuby厨の自慢になってるんだよ。
「全てがオブジェクト(嘘)」

940 名前:デフォルトの名無しさん mailto:sage [2018/11/26(月) 14:27:40.48 ID:DMixgTsv.net]
あれだろ、数値とかがオブジェクトではないJavaとかPerlと比べてるだけだろ
Rubyが出た当初の自慢話を今も引きずってると思い込んでる時点で何だかなという感じ



941 名前:デフォルトの名無しさん mailto:sage [2018/11/26(月) 15:54:35.18 ID:hq9iFTQc.net]
そもそもなぜそれが自慢になるのかがさっぱり分からんな
しょせんSmalltalkの顰みにならったに過ぎない変態仕様を…

942 名前:デフォルトの名無しさん [2018/11/26(月) 16:51:28.97 ID:M4lkR7sD.net]
31bit整数ω

943 名前:デフォルトの名無しさん mailto:sage [2018/11/26(月) 17:02:57.25 ID:DMixgTsv.net]
OCaml の悪口はそこまでだ

944 名前:デフォルトの名無しさん mailto:sage [2018/11/26(月) 17:11:49.93 ID:mi59PQkK.net]
おかむl

945 名前:デフォルトの名無しさん mailto:sage [2018/11/26(月) 17:58:58.25 ID:G4ZIak1L.net]
岡村△

946 名前:デフォルトの名無しさん [2018/11/28(水) 17:45:51.76 ID:eIHsuPDh.net]
空白に表示されている所は、タブ文字ですが、
{ |row| row } のように、無処理のブロックの短縮形は、ありますか?

require 'csv'

# タブ区切りで、要素中にもタブ文字・カンマあり
text = <<TEXT
あ "A a" 1,11
い "B b" 2,22
TEXT

result = ""
# 区切り文字を、タブ文字からカンマに変える
options = { :input_col_sep => "\t", :output_col_sep => "," }
CSV.filter( text, result, options ) { |row| row }

結果
あ,A a,"1,11"
い,B b,"2,22"

947 名前:デフォルトの名無しさん mailto:sage [2018/11/28(水) 17:53:59.91 ID:XVA+2nJs.net]
>>912
CSV.filter( text, result, options, &:itself)

948 名前:912 mailto:sage [2018/11/28(水) 18:59:40.51 ID:eIHsuPDh.net]
ありがとう

Ruby 2.2 から、Kernel#itself, &:itself が出来たのですか

949 名前:デフォルトの名無しさん mailto:sage [2018/11/29(木) 01:59:21.23 ID:4ZKIuq+k.net]
>>914
古いバージョンなら String#.to_s でもいいんじゃない

950 名前:デフォルトの名無しさん [2018/11/29(木) 02:48:29.40 ID:ef+1qPo+.net]
#.



951 名前:デフォルトの名無しさん mailto:sage [2018/11/29(木) 07:47:24.36 ID:gGiWbZov.net]
#.

952 名前:デフォルトの名無しさん mailto:sage [2018/11/29(木) 09:33:08.29 ID:NKs4R87v.net]
#.

953 名前:デフォルトの名無しさん mailto:sage [2018/11/29(木) 19:28:41.86 ID:g5k5pPxJ.net]
#.

954 名前:デフォルトの名無しさん [2018/11/29(木) 20:19:30.78 ID:eQcl6Axj.net]
youtubeでプログラミングやれば転職やフリーの仕事がまあまあできる、実際は
どうなんでしょうか。自分も学校に通ってプログラミングを習うつもりですが、
転職の際に役立つスキルとPRとして使えるのか、そのまま転職、または何かのきっかけレベル
になるのか、その辺りがわかならいままです。

955 名前:デフォルトの名無しさん mailto:sage [2018/11/29(木) 21:13:51.20 ID:BEC3KPap.net]
中途未経験でPGになるならはじめからまともな労働条件を望むのは非常に厳しい
ド糞ブラックならFizzBuzz書ければ通るから、まずはそこで3年耐えて、実績がついたら転職だ
その覚悟があるならいらっしゃい

956 名前:デフォルトの名無しさん mailto:sage [2018/11/29(木) 21:22:14.03 ID:BEC3KPap.net]
あと、Rubyはかなり上のレベル(君が日本のITベンチャーと聞いて思い浮かぶようなところ)
までいかないと人並みの給料貰えないし、そういうところは脱Rubyが進みつつあるから、よほどRubyに強い拘りが無い限りはお勧めできない
無難なのはJava、C、C#、JavaScript(できればNodeも)あたりだね

957 名前:デフォルトの名無しさん mailto:sage [2018/11/30(金) 07:26:13.92 ID:a1TjZ85x.net]
与えられた数値をより短い文字数で表せる計算式を作れたら大金持ちになれる。

958 名前:デフォルトの名無しさん mailto:sage [2018/11/30(金) 09:06:41.21 ID:VjmtC3o0.net]
YouT

959 名前:ube を見たら、学費無料もある。
転職請負人・育成機関だろ。
プログラマーに育て上げて、企業が採用したら、お金をもらう

Ruby は、短時間で学べる事が多い。
バグで時間を取られないから、
その時間でデザインパターン・フレームワーク・Linux コマンド・環境構築運用を学べる

Rubyの人は、広く浅く、システムの全行程がわかる。
Java のような関数だけ書けて、システムがわからない土方じゃない!
Rubyは、SE に近いプログラマー

画面は、HTML, CSS, JavaScript(JS) で作るから、これらにもRubyは応用できる。
JS, Kotlin などは、Rubyに似せているから、他言語にも応用できる
[]
[ここ壊れてます]

960 名前:デフォルトの名無しさん mailto:sage [2018/11/30(金) 10:49:21.11 ID:lqSrmRtB.net]
お前ら責任持って相手してコイツ↑をこのスレに引き付けとけよ。
他のスレ迷惑してんだからほんと。



961 名前:デフォルトの名無しさん mailto:sage [2018/11/30(金) 10:57:56.96 ID:pEng5xY0.net]
>>923
ZeoSyncという会社が100分の1程度にまでランダムなデータを圧縮できる技術を開発した

962 名前:デフォルトの名無しさん mailto:sage [2018/11/30(金) 14:50:04.77 ID:UglrfTNg.net]
Rubyの勉強したいんだがどのように覚えたらいい?
最終的にはRailsを使えるようになりたい
Rudyの基本的な文法覚えるのと他にやるべき事ってある?

963 名前:デフォルトの名無しさん mailto:sage [2018/11/30(金) 15:03:43.94 ID:pEng5xY0.net]
さっさとRails使え。RubyとRailsの勉強はあとからだ

964 名前:デフォルトの名無しさん [2018/11/30(金) 15:09:35.21 ID:PtogTj5L.net]
>>927
チェリー本おすすめだよ

965 名前:デフォルトの名無しさん mailto:sage [2018/11/30(金) 16:14:37.51 ID:1XSsfFTr.net]
他の言語経験済みなら公式ドキュメント読めば十分

966 名前: mailto:sage [2018/11/30(金) 22:59:49.28 ID:MkfLpznc.net]
>>922
>脱Rubyが進みつつある
Ruby から何に移行しようとしているのでしょうか?

967 名前: mailto:sage [2018/11/30(金) 23:00:34.72 ID:MkfLpznc.net]
>>926
ありえない…
ランダムデータは基本的に圧縮できないものなのでは?

968 名前:デフォルトの名無しさん mailto:sage [2018/11/30(金) 23:32:34.88 ID:XGbv3Lgm.net]
>>922
AWS Lambdaが対応だってよ?w
https://www.publickey1.jp/blog/18/aws_lambdarubyaws_reinvent_2018.html

969 名前:デフォルトの名無しさん [2018/11/30(金) 23:33:06.67 ID:VjmtC3o0.net]
progate のサイトに、Ruby, Rails 5 の教室がある

無料かどうかは、知らないけど

970 名前:デフォルトの名無しさん mailto:sage [2018/11/30(金) 23:44:08.65 ID:VjmtC3o0.net]
WEB+DB などでも、Ruby で有名な、クックパッドの社員の記事をよく見る

Rubyが、日本を引っ張ってる感じがする



971 名前: mailto:sage [2018/12/01(土) 00:03:27.37 ID:J8cQMvWo.net]
>>935
>Rubyが、日本を引っ張ってる感
Rails 以外でとんがった企画があれば、あるいは

972 名前:デフォルトの名無しさん mailto:sage [2018/12/01(土) 00:44:40.46 ID:bHszpHWA.net]
>>933
それRubyがPowerShellより優先度低いってことなんだけどわかってる?

973 名前:934 mailto:sage [2018/12/01(土) 06:40:35.57 ID:2OgcqxL5.net]
progate のサイトで、Ruby を学んでみたけど、途中から有料になる

974 名前:デフォルトの名無しさん mailto:sage [2018/12/01(土) 10:56:47.75 ID:ovdZdyXB.net]
>>937
ただの順番やん。w
対応されたことに意味があるんやで?

975 名前:デフォルトの名無しさん mailto:sage [2018/12/01(土) 11:17:15.65 ID:cJ9vDtaH.net]
COBOLも対応したんだよなあ

976 名前:デフォルトの名無しさん [2018/12/01(土) 13:37:36.24 ID:SyV5Kwhs.net]
irbでコード直打ちで試行錯誤でクラスとか作りながら、「あ、動いた動いた」となったときに
そのコードを保存しておこうと思ったらどうすればいいの?

historyで行を拾っていくしかない?

977 名前:デフォルトの名無しさん mailto:sage [2018/12/01(土) 13:47:54.40 ID:Km1sjdO2.net]
そんなことしないで、テストコード書いて
テストと

978 名前:ィったらOKにってやり方にしなさい
テストコードあれば何度でも最初から試行錯誤できる
アクロバット的なことをしなくていい
[]
[ここ壊れてます]

979 名前:デフォルトの名無しさん mailto:sage [2018/12/01(土) 14:01:16.52 ID:q6i9ekrs.net]
>>941
そんな段階で書いたコードなんか後でクソの約にも立ちません
潔く捨てなさい

980 名前:デフォルトの名無しさん [2018/12/01(土) 14:01:44.62 ID:SyV5Kwhs.net]
いや、業務でとかじゃなく暇つぶしでirbでいろいろ試してるのが楽しくて、で、
「あ、こんなこともできるんだ」とふと発見があったときに
そのコードを記録しておく方法がほしいんです、アクロバットとかじゃなく

historyしかない?



981 名前:デフォルトの名無しさん mailto:sage [2018/12/01(土) 14:05:07.89 ID:q6i9ekrs.net]
>>944
そんな小学生レベルのオナニーが楽しいのは初心者のうちだけ
断言するが、その段階を脱した後でそれを見ることは絶対にない

982 名前:デフォルトの名無しさん [2018/12/01(土) 14:06:41.43 ID:SyV5Kwhs.net]
例えばprologとかだとreplでいろいろ遊んだ後にlisting()とかやるとpredicateが一覧できるよね?
そういうことがやりたいんだけど

983 名前:デフォルトの名無しさん mailto:sage [2018/12/01(土) 14:08:49.20 ID:q6i9ekrs.net]
そういうのが好きならPythonに乗り換えてJupyterでも使ったら?
たぶん気にいると思うよ

984 名前:デフォルトの名無しさん [2018/12/01(土) 14:13:15.92 ID:SyV5Kwhs.net]
rubyにはあるの?ないの?
それが知りたい
ないんならないで

javascriptだって関数をtoStringすればコードが落とせるよね?
rubyだって簡単に何かありそうだと思うんだけど、rubyはあんまり知らないから聞いてる

985 名前:デフォルトの名無しさん [2018/12/01(土) 14:34:28.99 ID:SyV5Kwhs.net]
pryでこれやればいいのかな、今環境ないから試せないけど
https://qiita.com/joker1007/items/42f00b12c65bbec0e50a

986 名前:デフォルトの名無しさん mailto:sage [2018/12/01(土) 15:15:53.14 ID:vTpsYQrX.net]
pryならばhist -en

987 名前:デフォルトの名無しさん mailto:sage [2018/12/01(土) 22:52:41.66 ID:2OgcqxL5.net]
拡張機能・テーマも多いし、カラフルな、VSCode で十分

拡張機能のCode Runner で、右クリックメニューから、
ファイル全体または選択部分だけを実行できる

irb は、MSYS2, Windows で、日本語ではバグるから、WSL, Linux で使う。
たぶん、pry も、irbと同じ

988 名前:デフォルトの名無しさん mailto:sage [2018/12/01(土) 23:57:40.68 ID:2OgcqxL5.net]
5ch から、文章をエディタ(TeraPad)へコピーすると、
行頭・行末に半角空白がつくので、それを除去するために、
Windows, VSCode で、以下のソースに、文章をコピペして実行しています

皆さんは、どうやってますか?
TeraPad では、行頭の半角空白だけは、除去できます

text = <<TEXT
ここに、文章をコピペする
TEXT

text.each_line do | line | # 各行
line.strip! # 先頭末尾の空白類を削除する
puts line
end

989 名前:デフォルトの名無しさん [2018/12/02(日) 00:20:51.38 ID:7v1CQE2S.net]
なんのために5chの文章なんかコピペしてんの?

990 名前:デフォルトの名無しさん mailto:sage [2018/12/02(日) 00:21:47.55 ID:N8lNnYfB.net]
>>952
破壊的メソッドを使う意味がわからん
puts line.stripで十分だろ
まあおれならこうするが puts text.strip.split(/\s*\n\s*/m)



991 名前:デフォルトの名無しさん mailto:sage [2018/12/02(日) 04:06:48.25 ID:IGMOOEcv.net]
>>948
ここは初心者に優しいスレというよりは
初心者レベルの無知しかいないスレだから
ちゃんとしたところでちゃんとした人に訊いた方がいいよ

992 名前:デフォルトの名無しさん mailto:sage [2018/12/02(日) 06:19:08.33 ID:rWP9XnZT.net]
pryなら"$ Klass"でクラス定義を見ることもできるね
ただ>>941みたいなケースにはあまり役に立たないけど

993 名前:デフォルトの名無しさん mailto:sage [2018/12/02(日) 09:17:47.34 ID:8E4Rg4a5.net]
専ブラで空白除去くらいやってくれるだろ
ちなみに、Ruby2.3で<<~リテラルが追加されたので行頭消せるぞ

994 名前:952 mailto:sage [2018/12/02(日) 18:07:30.51 ID:uIlAasYL.net]
system "echo あいう | c

995 名前:lip"

Windows で、文字列をクリップボードに入れるのは、これで出来るのですが、
文字列の変数を渡すのは、どうすればよいの?

>>954
破壊的メソッドの方が、少しメモリを節約できるかも
[]
[ここ壊れてます]

996 名前:デフォルトの名無しさん mailto:sage [2018/12/02(日) 18:32:51.35 ID:8E4Rg4a5.net]
そんな少量のメモリをケチりたいならCでも使っとけ

str = <<TEXT
aaaaaa
bbbbbb
cccccc
日本語
TEXT
IO.popen('clip', 'w:cp932') do |clip|
clip.print str
end

997 名前:デフォルトの名無しさん mailto:sage [2018/12/02(日) 18:59:25.80 ID:D0TCox2F.net]
>>958
windows用のclipboardを操作するgemがあるから使うといいよ
win32-clipboard

あと誤差みたいなメモリ気にするより可読性気にしたほうがいい

998 名前:952 mailto:sage [2018/12/02(日) 20:03:31.57 ID:uIlAasYL.net]
出来た! これで、5ch の文章をコピペしても、先頭末尾に空白が付かない!

Windows で、__END__ 以下に、先頭末尾に空白がある、複数行文字列を書くと、
それを除去してクリップボードに入れる

ary = [ ]

DATA.read.each_line do | line | # 各行
line.strip! # 先頭末尾の空白類を削除する
ary.push line
end

IO.popen( 'clip', 'w:cp932' ) do | clip |
clip.print( ary.join "\n" )
end

__END__

999 名前:デフォルトの名無しさん [2018/12/02(日) 20:15:46.32 ID:7v1CQE2S.net]
よかったね

1000 名前:デフォルトの名無しさん mailto:sage [2018/12/02(日) 20:42:29.76 ID:D0TCox2F.net]
DATA.read.each_line.map(&:strip)って書きたくなる

それはそうとpry使うときにクリップボードの内容をStringのインスタンスとして取得したり
任意のMarshal.dump可能なインスタンスをdumpした結果をクリップボードに保存しておいて
それからインスタンスを取得したりするメソッド用意しておくと
端末間で手軽に配列コピーしたりできて便利



1001 名前:952 [2018/12/03(月) 13:47:09.60 ID:xHLM582p.net]
Windows で、クリップボードから取得して、クリップボードへ入れた

クリップボード内の複数行文字列の、各行の先頭・末尾から、
連続する空白類を除去して、クリップボードに入れる

新しいpowershell では、クリップボードから文字列も取得できる

str = `powershell Get-Clipboard`
str.encode! Encoding::UTF_8, Encoding::CP932 # UTF_8 へ変換

ary = str.each_line.map( &:strip )

IO.popen( 'clip', 'w:cp932' ) do | clip |
clip.print( ary.join "\n" )
end

1002 名前:デフォルトの名無しさん mailto:sage [2018/12/04(火) 20:44:15.42 ID:0EeyK9d3.net]
>>963
DATA.each_line.map(&:strip)で良い






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

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

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