Ruby 初心者スレッド Part 60 [無断転載禁止]©2ch.net

■ このスレッドは過去ログ倉庫に格納されています
2017/04/29(土) 02:01:58.34ID:urVXnFrH
プログラミング言語Rubyについての、初心者向けスレです。質問・要望・雑談などどうぞ。
質問するときは、OSやRubyのバージョン、エラーメッセージを書いたほうがいいお
Ruby on RailsについてはWEBプログラミング板で

前スレ
Ruby 初心者スレッド Part 59
http://echo.2ch.net/test/read.cgi/tech/1475394638/

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

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

逆引きRuby
http://www.namaraii.com/rubytips/
169デフォルトの名無しさん
垢版 |
2017/05/17(水) 05:58:15.48ID:AoGXWMN0
>>168
答えじゃなくてすまんけど感想を。
そういうことを聞ける場所が2chしかないのが残念だよね
Rubyを始める人のコミュニティってないものか
ずっとそういう場所を探している
170デフォルトの名無しさん
垢版 |
2017/05/17(水) 06:20:15.54ID:Q6ZDgQU6
>>169
そですねー、私もまずコミュニティ的なものを探したんですけど
勉強会みたいなのはあるのに、こういった掲示板的なものは
みつけられないんですよね。初心者はわりかしきついですね。
相変わらず四苦八苦してますw
2chはマイナーなものは、あまり素人は歓迎されない気もしますね。
2017/05/17(水) 06:20:34.43ID:+84GJVyA
まさか生のrubyコードをコマンドプロンプトに『打ち込んでるんじゃ
172デフォルトの名無しさん
垢版 |
2017/05/17(水) 06:34:58.31ID:AoGXWMN0
>>170
無いなら作れってところなのだけど
それを作る技術を得るためには・・・
堂々巡りで困ってる

2chには妖怪が住んでいるからなぁ
173デフォルトの名無しさん
垢版 |
2017/05/17(水) 06:50:32.62ID:AoGXWMN0
>>171
なるほど!

ruby -v
を試してみればいいんだな

#とかでという意味がよくわからないけど
2017/05/17(水) 06:53:25.51ID:+84GJVyA
きっと「#」で始まる行をコピペしてコマンドプロンプトにそのまま張り付けたんじゃないのかね
binにパス通ってるならirb起動すれば幸せになれるかもね
175デフォルトの名無しさん
垢版 |
2017/05/17(水) 07:06:09.77ID:Q6ZDgQU6
>>171
あははw
いろいろあって混乱してたんだw
本にもテキストエディタで書けって書いてあったw
その前にPath関係の確認させられてたから勘違いしてしまった。
すごいあっさり大事なことが色々かいてあるとこ見逃してたw
C言語の勉強をrubyの勉強する前に触っておこうと思って
コンパイラに書いてたような感覚でやってしまったw
rubyのさわりもブラウザ上で書く感じの勉強だったんだ
だ、だから違うんよ?うん、違う違う。知ってた知ってた。
2017/05/17(水) 07:15:15.40ID:Q6ZDgQU6
まあ、初心者ってこういうくだらない質問するもんだから、許して笑ってくれさい。
そして、そういう初心者用のコミュニティは作れないっていうか、
初心者が作っても人集まらないだろうからここでできれば助けて下さい。
rubyスレ希少なんです・・・という初心者の声なのでした。
177デフォルトの名無しさん
垢版 |
2017/05/17(水) 07:20:26.73ID:AoGXWMN0
>>176
俺はそういうのが作りたいんだー
178デフォルトの名無しさん
垢版 |
2017/05/17(水) 07:21:52.55ID:AoGXWMN0
2chって「初心者」って言葉に食いつく妖怪もいるからなぁ
2017/05/17(水) 07:35:16.07ID:zoT6JpA4
OKWAVEとかどう?
180デフォルトの名無しさん
垢版 |
2017/05/17(水) 07:44:52.13ID:AoGXWMN0
>>179
それは見てなかったなぁ
よっしゃ
これからそこへ質問入れてみるぞ
2017/05/17(水) 07:53:53.40ID:S++XgTKO
>>172
掲示板を立ち上げること自体は難しくないけど、管理維持するには住人やISPなどのバックアップが必要不可欠
個人で運営する場合は、住人による自治が基本になるしそれで対応しきれない案件に関しては管理人やISPによる強権発動で対応
これらの支援を受けられなくなって久しいし、荒らしに対応できなくなるのは目に見えていて長期的維持を望めない

あと技術の初心者は構わないがコミュ力初心者は遠慮願わないと。今や「初心者は免罪符ではない」などと言われることも無くなったしなぁ・・・
182デフォルトの名無しさん
垢版 |
2017/05/17(水) 07:55:53.94ID:AoGXWMN0
>>179
そこのRubyカテゴリは1ヶ月眠ってるがな
2017/05/17(水) 08:48:21.65ID:vMnI7rwx
2ch以外で質問できそうな所っていうとこの辺のサイトか

質問できる所
テラテイル
https://teratail.com/
スタック・オーバーフロー
https://ja.stackoverflow.com/

Rubyの記事投稿が多い所
Qiita
http://qiita.com/
184デフォルトの名無しさん
垢版 |
2017/05/17(水) 09:02:29.68ID:AoGXWMN0
>>183
teratailもstackoverflowも質問することがはっきりしてる場合なんだよね
ある程度のレベルがいるし。
Qiitaいいたっては聞くというより情報発信サイトかと思われる

でも
今Qiitaに登録したったw
2017/05/17(水) 10:02:00.71ID:vwwaD4yq
>>170
まずWindowsを使いこなせてないからだな
言語のスレだとみんな環境違うしそういう知識は身につかないかも
適切なとこ見てれば質問のしかた(必要な情報)もわかってくるはずだ
186デフォルトの名無しさん
垢版 |
2017/05/17(水) 15:22:05.45ID:O9qCgXnQ
>>183
SOのjpはやめとけ
2017/05/17(水) 15:34:35.54ID:P4LQUJ7D
>>186
stackoverflowあかんの?
ちょいとその辺の事情をお願い
2017/05/17(水) 15:58:25.56ID:JDHyCaYk
日本語のスタックオーバーフローって検索の上位に出てこないイメージ
ってことは・・・・・・
189デフォルトの名無しさん
垢版 |
2017/05/17(水) 18:45:28.28ID:AoGXWMN0
Ruby2.4のリファレンスマニュアルをダウンロードするにはどうしたらいいのー
2017/05/17(水) 19:08:51.18ID:+84GJVyA
階層構造を保持したままローカルに保存できるソフトでも使えば
2017/05/17(水) 19:20:27.17ID:t1VY0/wg
昔はzipとかなかったっけ
192デフォルトの名無しさん
垢版 |
2017/05/17(水) 19:24:12.98ID:AoGXWMN0
古いバージョンのマニュアルと最新のならダウンロードできるようになってるんだけどね
2017/05/17(水) 22:49:59.99ID:OcBoOJyM
>>164,166
どこの誰かは覚えてないといったけど、ふと思って探してみたら、あっさり見つかった。
ttps://mobile.twitter.com/kmizu/status/857032083046256641

> ソフトウェア分野一般に通じる「技術力」というのは実際には
> 存在しないのにあると信じられている幻想だと思う。その幻想が
> 広く信じられている結果として、たとえば著名プログラミング言語の
> 作者はスーパープログラマのように思われがちだとかいう現象が発生する。

たしかこれだった。
2017/05/17(水) 23:14:17.43ID:Id1y7eqA
JavaとかC#の作者は実際凄いらしいね
Matzは祭り上げられてる割にはRuby以外でほとんど実績らしい実績を聞かない
2017/05/17(水) 23:20:38.33ID:y0sg8W2t
JavaとかC#の作者の名前は?
Matz個人、人間一人と渡り合えるなんて、すごい人だろうね。
2017/05/17(水) 23:23:53.49ID:Id1y7eqA
>>195
自分で調べたら?
どっちもチーフアーキテクトは個人崇拝されてる有名人だよ
2017/05/17(水) 23:25:17.03ID:y0sg8W2t
「チーフアーキテクトは」ってことは
それ以外の役職の人がいるってこと?

Matz一人に対して複数の人があつまらないと
対抗できないってのはちょっと恥ずかしくね?
2017/05/17(水) 23:27:09.81ID:SKu/yZ4u
>>197
それを言うならRubyだってMatzが全部決めてる訳じゃないよ
2017/05/17(水) 23:27:10.61ID:y0sg8W2t
調べた

https://ja.wikipedia.org/wiki/C_Sharp 開発者 マイクロソフト
https://ja.wikipedia.org/wiki/Java 開発者 オラクル
2017/05/17(水) 23:27:20.00ID:Noyf0zx+
コンパイラとインタプリタじゃ難易度全然違うしな。
C#の作者なんかはTurbo Pascal,同C,同C++,Delphi,C++Builder,Visual J++,VC#,TypeScriptと、言語もだけどライブラリも設計してる。
ベテラン中のベテラン。
センスも経験も数段上。
2017/05/17(水) 23:28:28.62ID:Noyf0zx+
あ、言語はオリジナルはC#とTypeScriptだけだから、コンパイラとライブラリの設計がほとんどやね。
2017/05/17(水) 23:30:32.17ID:zoT6JpA4
JavaとかC#はチームで作ったものだからね
基本的な部分はチーフがやったとしても全体を作り上げたのはチームだから
チーフがすべての部分についてウルトラスーパーハカーである必要はないんだよ
2017/05/17(水) 23:46:22.36ID:0i9RfNds
Javaは忘れたがC#はアンダース・ヘルスバーグって人が作ったもん、余談だがDelphi作った人だからC#はとてもDelphiくさい
2017/05/17(水) 23:54:49.77ID:q+Jp+PKK
日本人って何かにつけて神とあがめ立てて思考停止する奴が多いよね。なぜそうなのか、どうやったのかとか考えようとしない
2017/05/18(木) 00:02:07.55ID:d+oDyp66
4月に、Win10の、Windows Subsystem for Linux(WSL)の大きな更新があった。
誰か、WSLから、Rubyを使っている人、いる?

居たら、報告して

日経Linux 6月号に、WSL の特集あり
2017/05/18(木) 00:36:47.85ID:HnnQPjdl
>>193
ツイートが連続してて、そのリンクはろうとしたけどめんどくさいので、かわりにこれで。
ttp://i.imgur.com/uCg2V4P.png
だんだん思い出したけど、スーパーハッカーとかスーパープログラマーで調べてたんだった。
ルビーの作者でもスーパープログラマーじゃないなら、どうしていいのかわかんないな。日本にいなさそう。
2017/05/18(木) 00:42:18.01ID:mKKG/7h8
すごいプログラマだけどもスーパープログラマーという方向性の人ではないと思う
なんというか、仮面ライダーとウルトラマンくらい傾向が違う
だいたい正義の味方のだいたい超能力人間なんだけど、まとめると違和感
2017/05/18(木) 01:07:17.85ID:dz2c6KN5
>>206
プロの一流の選手を、ドラフトにひっかかりもしなかった三流が「あの選手は大したことない」と言ってるみたいな感じか。
たまにいるよな、こういうの。
209デフォルトの名無しさん
垢版 |
2017/05/18(木) 02:12:28.50ID:k2/bnmai
こんなレベルの人の集まりかと思わせる雑談だな
これもパートスレの弊害だろ
2017/05/18(木) 02:28:27.52ID:n0l9x2sF
>>205
rbenv で入れて使ってる。
ちょっとしたスクリプト動かすのに便利。
2017/05/18(木) 07:40:51.40ID:HnnQPjdl
>>208
どちらかというと、半分以上は嫉妬心だと思う。つまりやっかみ。
大学の演習で作るようなレベルのものと、世界中のサービスで使われるレベルのものとでは、難易度がはるかに違うのにな。
2017/05/18(木) 07:58:52.21ID:jHW9tOS8
設計技術と実装技術って無関係とは言わずとも別物だけど区別出来ていない人は多い
プログラミングは後者である
2017/05/18(木) 07:58:54.30ID:uGmNBL+O
Matzさんはプログラミング言語の知識は凄いけど最適化周りは今一つってのは共通認識だと思っていたが…昔からずっと「Rubyは遅い」って皆でブーブー言ってたじゃない
でも前者の能力持ってる人は稀有だからやっぱりスーパープログラマーに違いないと思うよ

アニメーターの大塚康生さんが「宮さん(宮崎駿)は描くの早いけど絵は上手くない」って評してるけどMatzはプログラミング言語界の宮崎駿みたいなもんだよ
ある方向は秀でてるけどある方向はそれほどでもない。だけどスーパー○○には違いない
2017/05/18(木) 08:10:53.60ID:jHW9tOS8
Rubyが遅いのはコーディング技術の不足よりシステム設計の制約だと思っていたけど違うのか?
あのシステム設計がJIT化の障害にもなっているみたいだし、Intelのプログラマー陣に書かせたら
爆速に!とはいかないと思うんだが
2017/05/18(木) 08:52:05.04ID:a7kCQWZC
愚直なプログラミングだからドキュメントなしでやってこられたけど、未だにドキュメントが完成してないのは驚きである
2017/05/18(木) 09:02:19.96ID:mKKG/7h8
○○がないなんて非常識で公式やる気なさすぎでウチでは使えないよ、という人たちにスルーされたからこそ今があるのでは
Linuxみたいなもんだw
2017/05/18(木) 09:40:39.90ID:W+cXBvNa
>>213
> だけどスーパー○○には違いない
スーパーマツモト?
218デフォルトの名無しさん
垢版 |
2017/05/18(木) 10:21:34.30ID:k2/bnmai
いまさらかもしれないがプログラマってすごく偏ってるのかな
存在も考え方も
2017/05/18(木) 12:17:40.22ID:nGaj6J50
C#の作者は普通の企業戦士としてクソ有能らしいね
ハッカーやアーキテクトとしての専門的技能を十二分に備えた上で、
マネージャとしてチームを率いて製品を作り上げられる超人
220デフォルトの名無しさん
垢版 |
2017/05/18(木) 15:06:50.15ID:6nNpr9wz
Rubyが普及(ω)したのはドキュメントを書かなかったからだよ
2017/05/19(金) 00:02:38.38ID:JAygot/q
軽々しく他人のことを神だの超人だの言っちゃう人って実力は大したことないのにプライドだけ高いんだなろうな
しかも多分その自覚が無い。自分の能力が大したことないことを自覚できていればそういう表現の仕方はしないはずだし
神格化するより研究し自分の能力を伸ばすことを考えるはず
2017/05/19(金) 01:30:43.67ID:4+vIujWP
一流を認められない人に成長はない
2017/05/19(金) 01:45:17.48ID:ge9DZPXJ
よっぽど何かコンプレックスあるんだろうねこの人

ああ、この人ってのはこのスレに何日も同じようなことグチグチグチグチとえんえん書き続けてる人ね
224デフォルトの名無しさん
垢版 |
2017/05/19(金) 06:30:50.15ID:eboDhNue
矛盾を含んだ文章ってスパゲッティコードみたいだよね
225デフォルトの名無しさん
垢版 |
2017/05/19(金) 06:33:50.64ID:eboDhNue
そうだ
Rubyが好きなのは
Pythonみたいにインデント強制されないし
Javaみたいに大文字小文字まで強制されないからなんだ
2017/05/19(金) 08:24:53.47ID:wMmgU2C4
>>206
なんで時系列が逆順なんだよw
2chでも古い書き込みが上で新しいほど下になってるだろ。
そのほうが自然なんだからそうしろ

>>223
>よっぽど何かコンプレックスあるんだろうねこの人
成功した人に嫉妬してる暇があれば自分で何か作ればいいのに、そうする人は少ない
2017/05/19(金) 08:29:07.55ID:ax6ergs3
自分で何もできないから他人に嫉妬する、まあ俺のことなんですけどね
2017/05/19(金) 15:13:31.24ID:4aXBqFa1
>>225
Javaのは強制でないだろ
2017/05/19(金) 23:21:36.00ID:vjfQYplO
実際に結果を出した人は
その結果の現実における実在性から人生に安定感なり心の余裕が出てくるように見えますよね。
2017/05/19(金) 23:29:01.51ID:JAygot/q
本当の天才や神もたまにいるけどきわめて稀。ほとんどの場合は普通の能ある人
大抵の場合聞き上手&話し上手でコミュ力が高いのと論理的な思考・判断が出来る

嫉妬している暇があるなら成功している人を分析した方が建設的だし結果を出す近道だろう
2017/05/19(金) 23:33:19.60ID:ivu0jzcH
>>223
キチガイに絡まれたスレは悲惨だな
232デフォルトの名無しさん
垢版 |
2017/05/20(土) 04:52:57.18ID:Gofa0r8M
キチガイか・・・
この言葉の取り方も人それぞれだろうけど。

もっと適当な新しい言葉はないものかね
ネットコミュニティで使えるような・・・
粘着、凝り固まった、共鳴しがたい論理、複数人を装うタイプ
ついでに嫉妬、妬みもいれとこか
そんな人をいう言葉
233デフォルトの名無しさん
垢版 |
2017/05/20(土) 05:05:32.15ID:Gofa0r8M
そんなことより
誰かマジで教えてくれないか

herokuでRubyを動かしたいんや
RoRじゃなくてただのシンプルなRuby
Ruby環境のあるレンサバだとindex.rbで動くやん
あれと同じようにwebページを表示したい

windows7でやってる
gitでpushまでは出来るのだけど
どうしてもトップページが表示できない
Qiitaとかの情報はぐぐりまくってるいのだけど
ピッタリのものはない
php,node.jsがQiita情報では優勢や

rackというのがキーワードだということまではわかった
Gemfile,Gemfile.lock,Procfile,config.ru
も整えたつもりなのだけど
中身がまずいんやろなぁ

もういちど書くけど
RoRじゃなくて素のRubyで
一番シンプルにsinatraとかフレームワークを使わずに
herokuでindex.rbをトップページに表示したい
234デフォルトの名無しさん
垢版 |
2017/05/20(土) 05:11:20.26ID:Gofa0r8M
>>233
これだけじゃ意味が伝わらないかもしれないから
やってることをわかってもらえるようなgithubを
24時間以内に用意するわ
なんせrubyもgithubもherokuもやり始めたばかりの素人なもので
ちょっとしたことでも時間がかかるので24時間以内な
235デフォルトの名無しさん
垢版 |
2017/05/20(土) 05:17:48.16ID:Q4Q/cnZ9
そして一年が過ぎた・・・
2017/05/20(土) 05:46:34.75ID:WmFfeyqJ
chef, vagrant から、VirtualBox で、Linux

それか、4月に、Win10の、
Windows Subsystem for Linux(WSL)の大きな更新があったから、WSLでするとか?
237デフォルトの名無しさん
垢版 |
2017/05/20(土) 06:58:20.85ID:S1Z+OH1L
IniFile使って初期化ファイルに"a\\b\\c\\r\\z"と書き込んで読み出してみたら
"a\\b\\c\r\\z"になっててハマったという愚痴
2017/05/20(土) 09:13:37.26ID:4bKGcQHk
アイデアをかっぱらうと成功者になれる。
2017/05/20(土) 17:53:17.49ID:5kEYc3L0
>>233
Qiita記事漁ってたらそれっぽいの見つけたけど
やりたい事ってこういう事?
Herokuで単純なrubyスクリプトを定期的に実行する
http://qiita.com/kasei-san/items/909f17c2c42b7e3a8489
2017/05/20(土) 18:12:45.66ID:abd2HxZJ
>>233
PythonかNode.jsでAWS Lambdaおすすめ
241デフォルトの名無しさん
垢版 |
2017/05/20(土) 19:00:59.25ID:Gofa0r8M
>>239
それは見てなかった
でも最初の設定のgithub元はRailsのようだ
もっと単純にやりたい
どっちかというとこれに近いと思う
http://qiita.com/higuma/items/9baac9e97eeb862ef64e
これどおりにしても動作しなかったけど。
242デフォルトの名無しさん
垢版 |
2017/05/20(土) 19:02:15.16ID:Gofa0r8M
>>240
先のステップの課題として覚えておくわ
243デフォルトの名無しさん
垢版 |
2017/05/20(土) 22:54:23.09ID:Gofa0r8M
233の続き
誰かが間違いを指摘してくれることに望みをかけてここに公開する
244のqiitaを参考にしているのだけど
やったこと
githubは
https://github.com/sasisu/aiue01
これからherokuの方へdeploy
そうすると
https://aiue01.herokuapp.com/
このAplication errorのページになる
herokuはheroku/rubyのBuildpacksを適用

何かが足りないか間違えてるか
それとも全く勘違いなことをしているのか
わからない 👀
Rock54: Caution(BBR-MD5:b95868ef2c0ed5e765a4d10ada4cf289)
2017/05/21(日) 01:32:34.60ID:Fqssqcja
>>240
Pythonスレで言いなよ
2017/05/21(日) 02:01:38.54ID:1evlh7eH
Herokuの説明書を読んだら?

それか、自分が書いたファイルに、1行ずつ、p を書いて、
変数の内容を表示するとか

まず、どこでエラーが起きたのか、切り分ける。
それがデバッグの基本
246デフォルトの名無しさん
垢版 |
2017/05/21(日) 07:01:26.49ID:kt8opZkV
>>245
まぁな
247デフォルトの名無しさん
垢版 |
2017/05/21(日) 21:55:20.21ID:kt8opZkV
24時間経っても>>243の応答が無いのでリンク先は削除しておきます

これからレスをしてもらってもすぐには見れないと思うので。
2017/05/22(月) 08:26:38.46ID:oFkfOiZj
>>206
これはScalaの有名な人だね。調子こいたことを言ってMatzにたしなめられることが複数回あったようだから、逆恨みしてるんだろう。

なお有名な言語の作者たちは互いに尊敬しあってるよ。一流ってそういうもの。
2017/05/22(月) 21:31:51.11ID:fASqKLCq
1.8.xの頃の拡張ライブラリを最近の2.x.xで使えるように改造したいのですが
Rubyの各バージョン間の拡張ライブラリのインターフェイスの差異がまとまっている資料とかないですかね?
2017/05/22(月) 23:55:24.58ID:ENAWgACr
『Rubyレシピブック 第3版 303の技』という本を書店に残っているのを偶然見つけたのですが
Ruby1.8〜1.9、JRuby1.5を対象にしているとあり
現行の2.2系、2.3系と互換性があるのかが分からず購入を迷っています

またもしあれば1.8系、1.9系、2.xx系以降の互換性や追加機能をまとめたサイトなどがあれば教えて欲しいです
2017/05/23(火) 00:15:49.33ID:9lq+WTHz
プロジェクトマネージャーとしては絶望的にセンスが無いとは思ったことはある。
2017/05/23(火) 01:52:19.84ID:OOs1u3xZ
Ruby2.0なら使えるんだけどね
それ以前のは「どうして使えないのか」「どこを変えればいいのか」の手間と情報の加減上全く勧めない
問題は2.xの逆引きレシピ本のいいのが現行では無いことだが
253デフォルトの名無しさん
垢版 |
2017/05/23(火) 05:16:29.68ID:ZEoEO5ey
レシピ本には、そんな長いコードは載っていないから、
動かなければ、自分ですぐに修正できるのでは?

数値を3桁ずつ、カンマ区切りにする関数は、参考になった

Railsの1日後とか、良いよな。
1.days.from_now
2017/05/23(火) 06:50:04.85ID:qRgUoCZd
>>248
すいませんが若気のいたりということで大目にみてもらえませんか?
日本のScala界では貴重な人材なので。

それよりMatzの講演について話そうぜ!
http://srknr.hatenablog.com/entry/2017/05/20/235839
2017/05/23(火) 08:14:22.26ID:Mb7W8Mqo
>>252
やっぱり2.x系のもので無いと互換性が厳しいですか・・・・・・
新しいレシピ本が出るまで見送りたいと思います
2017/05/23(火) 16:42:43.02ID:xunAucQT
Ruby で文字列が英数字とハイフンのみで構成されていることの確認 (バリデーション) を正規表現を使わずに実現するのに、
string.delete("a-zA-Z0-9-").empty?
っていうやり方でとりあえず間に合わせてるんだけど、他にスマートな書き方ある?
2017/05/23(火) 16:55:02.24ID:UVgxThtR
正規表現を使わない理由がわからないと
何言ってもそれはなしでと言われそう
2017/05/23(火) 16:57:40.08ID:nu8Noumz
>>256
ぱっとリファレンス見てきたけどcountに条件逆で渡した上で0か調べるってどうかな
2017/05/23(火) 16:59:58.40ID:nu8Noumz
ascii_only?ってメソッドあるけど完璧な動作ではないよなぁ多分
2017/05/23(火) 17:12:57.96ID:/kxvtD+k
>>258
おお、情報ありがとう!
こんな感じかな。
たしかに処理的にだいぶ分かりやすくなったかも。

string.count("^a-zA-Z0-9-").zero?
2017/05/23(火) 17:22:10.11ID:/kxvtD+k
>>257
どうしても正規表現を使わないと実現出来ない処理でもないんじゃないかと思ったのと、セキュリティ的にチェック漏れが怖いっていうのが理由かな。
正規表現に詳しくて、間違いない自信があれば正規表現でも良いんだけど、俺にはその自信がない。。
2017/05/23(火) 17:25:33.79ID:/kxvtD+k
>>259
たしかに ascii_only? だとやりたいことに近いけど、アンダーバーとかその他記号も OK になっちゃって、希望する判定基準とは少し違ってきてしまうんだよね。
2017/05/23(火) 17:28:08.27ID:UVgxThtR
>>261
deleteの独自ルールも不安だな
どっちにしろちゃんとテストコード書いとけとしか
2017/05/23(火) 17:43:19.80ID:OOs1u3xZ
「ヒットしてほしい正規表現にマッチするかどうか」で書かれてたほうがよっぽど漏れがないし間違いがないしコードとしても明瞭で安心すると思うがね
countの引数の仕様は知ってる? あれってtrというUNIXコマンドと一緒なんだよ
アレに頼って長々書かれるよりは正規表現のほうがいいな俺は
2017/05/23(火) 18:18:44.65ID:/xgNS39l
OK な文字列以外はどんな含まれ方をしていようと一概に弾くように、delete とか count で OK な文字列だけを列挙する指定の仕方を考えたんだけど、よく考えるとそれでも抜けがある可能性は依然として否定できないわな…
正規表現を使うか使わないかは宗教的な話になりそうだけど、テストコードを書けっていうのはまさしくその通りだわ。
266デフォルトの名無しさん
垢版 |
2017/05/23(火) 23:55:10.87ID:ZEoEO5ey
JavaScript では正規表現だな

2回以上、同じ正規表現を使うなら、
コンパイルを1回だけして、使いまわすことで、やや速くなる
2017/05/24(水) 00:37:22.71ID:NrN6swuV
evenArry, oddArry = [], []
ARGV.each_with_index{|arg, i|
evenArry.push(arg) if i.even?
oddArry.push(arg) if i.odd?
}
evenArry.zip(oddArry){|x, y| print [x,y] } if evenArry.size < oddArry.size
oddArry.zip(evenArry){|y, x| print [x,y] } if evenArry.size >= oddArry.size
puts

このコード、Pythonのzip関数は短い方に合わせてくれるのに、rubyのzipメソッドが長い方に合わせて、
短い方の不足分に勝手にnil入れるから、長さ比べて短い方でzipメソッド使うようにしてるんだけど、nilを省くメソッドあったら一行浮く。
何か良いメソッド知りませんか?
2017/05/24(水) 01:20:48.51ID:n3q9H30C
>ruby tes.rb 11 22 33 44 55 66 77
["11", "22"]["33", "44"]["55", "66"]
という出力をしてほしいだけなら
ARGV.each_slice(2).take_while{|e| e.size == 2}.each{|a| print a}
2017/05/24(水) 03:39:14.16ID:oHzoLy1g
>>267
compact
■ このスレッドは過去ログ倉庫に格納されています
5ちゃんねるの広告が気に入らない場合は、こちらをクリックしてください。

ニューススポーツなんでも実況