答えて
いいえ、その略語はありません。
def really_empty?(x)
x.strip.empty?
end
とmethod
を使用します:
array.reject(&method(:really_empty?))
またはラムダを使用する:あなたは、メソッド定義することができ
really_empty = ->(x) { x.strip.empty? }
array.reject(&really_empty)
をしかし、あなたが持っていない限り、私はより良いものをのいずれかを呼び出すことはありませんロジックを分けることが理にかなっている十分な場所にreally_empty?
を使用してください。あなたがRailsのを使用しているので、
しかし、あなただけ.strip.empty?
の代わりにblank?
を使用することもできます。彼らは非常に同等じゃないのでnil.strip.empty?
はちょうどあなたの例外を手渡し一方nil.blank?
が真実であること
array.reject(&:blank?)
注意を。しかし、あなたはおそらくnil
を拒否したいので、blank?
を使っても良いかもしれません。 blank?
はfalse
、{}
、および[]
についてもtrueを返しますが、おそらく文字列の配列にその文字が含まれていない可能性があります。あなたがampex
宝石でそれを行うことができます
それは上記のようなを書くことは非常にいいだろうが、それはサポートされている構文ではありません、あなたはto_procの構文を使用してチェーンの方法にしたいと思う道(&は:)そうのようなものです:
.map(&:strip).reject(&:empty?)
けれども、私はそれがあるとして、あなたの元の例を使用することを選ぶでしょう。 –
私はちょうど興味のある簡単なテストを実行し、それをあなたの元の方法でやっていることが、二重短縮方法と比べて2倍以上速いことがわかりました(これは別の一時配列を部分マップの)。 –
'map'の前に' lazy'を呼び出すと、パフォーマンスが向上します。 – michau
:すべての現実ではなく、そのようにそれらを一緒にチェーンにしよう
require 'ampex'
array.reject &X.strip.empty?
- 1. Gitは<<<<<<< HEADをファイルに追加し続けます
- 2. Heredoc <<<または<<?
- 3. は、私が<code>AbstractSet</code>で<code>equals</code>方法は<code>Collection</code>代わりの<code>Set</code>にオブジェクト<code>o</code>を型キャストする理由を知って好奇心のJava
- 4. 私は<code>Emulator Android BlueStack</code></p> <p><code>IISExpress ASP.NET</code>で<code>ASP.NET IISExpress</code>を使用したい
- 5. は、私はRDDが</p> <pre><code>JavaPairRDD<String, List<String>> existingRDD; </code></pre> <p>と呼ばれてい
- 6. std :: cout << xの間のdiffrenceは何ですか;とstd :: cout << x << std :: endl ;?
- 7. は、どのように私は、変数</p> <pre><code>int x = 2; </code></pre> <p>とリストを持っている
- 8. <<使用を避ける方法 -
- 9. JSPは、JSPはそれだけで疑問符(???? ..)を印刷し呼ばれたとき、私は私のJSP</p> <pre><code>... <% out.println(request.getAttribute("textFromDB")); %> ... </code></pre> <p>に次のコードを持って英語
- 10. 私は、それはperlの</p> <p>私がいたを使用して行うことができますどのように</p> <pre><code>String sql = Query1; </code></pre> <p>のようにそれを交換したい行</p> <pre><code>String sql="select * from "+ "emp_data"; </code></pre> <p>のように私が持っている私のファイルでのPerl
- 11. は、これは私です</p> <pre><code>'[errors]' => [], </code></pre> <p>..私は、ユーザーテーブルを持っていると私は私が<code>$user</code>をデバッグする場合でも、それはnullを返し<code>save()</code>保存したいときにエラーがないCakePhp3
- 12. grepは、フォルダを除外して、私は</p> <pre><code>/var/ </code></pre> <p>にいるならば、私は<code>/var/www</code></p> <p>を検索したいLinuxの
- 13. は</p> <p>は、inputfileの</p> <pre><code>SOMETHING {}; </code></pre> <p>によって</p> <pre><code>EXTRATHING { }; </code></pre> <p>を置き換える私は単純に次の操作を行いたい
- 14. マウスは、マウスが<code>.wrap</code>、<code>.cube</code>と<code>.front</code>のために働いてではなく、<code>.left</code>、<code>.right</code>、<code>.top</code>、<code>.bottom</code>と<code>.back</code>のためにされ
- 15. は、私は私の<strong><em>カスタムウィジェットコードから</em></strong>を追加<strong><em>QGridLayout</em></strong>で、QGridLayout
- 16. Tortoise svn <<<<をファイルに追加しています!
- 17. は、私は、この種の機能</p> <code>alpha</code>、<code>beta</code>、<code>A_i</code>と<code>B_i</code>は実数である<pre><code>f(x)=alpha+beta \sum_i A_i/(x-B_i) </code></pre> <p>を持っている機能
- 18. オブジェクトは、私は自分のアプリケーションで<code>infragistics</code><code>igGrid</code>を使用しているが、私は</p> </blockquote>「_super」プロパティまたはメソッドをサポートしていません<code>javascript</code>エラー</p> <blockquote> <p>オブジェクトを取得しています<p>igGrid
- 19. NestedScrollViewコンテンツがあるときに、それ自体をスクロールダウンし、私は<code>DrawerLayout</code>のconsits XML、<code>custom views</code>と<code>CoordinatorLayout</code>、<code>AppBarLayout</code>、<code>NestedScrollView</code>を持って
- 20. 変数が</p> <pre><code>var isUpdated:Bool = false </code></pre> <p>がtrueの場合、私はすぐに</p> <pre><code>func performSegue() { self.performSegueWithIdentifier("toTabSegue", sender: self) } </code></pre> <p>を実行したい
- 21. 私は私がこれをクリックすると</p> <p><code><li><a href="#two" class="button" id="Button123">Text</a></li></code></p> <p>、マイページ</p> <p>にダウンした私は、コードの一部を持っている
- 22. は、どのように私は<code>NAVIGATION_MODE_LIST</code></p> <pre><code>getActionBar().setNavigationMode(ActionBar.NAVIGATION_MODE_LIST); </code></pre> <p>に<code>action bar</code>を設定し、それ用のアダプタを設定しNAVIGATION_MODE_LIST
- 23. 私は2つの機能</p> <pre><code>void foo() { std::cout << 1 << std::endl; } void bar() { std::cout << 2 << std::endl; } </code></pre> <p>をお持ちの場合は2個の関数のC++
- 24. Rubyのattr_readerは、<<
- 25. THREE.Camera.prototype.lookAt</ <() -</ <はどういう意味ですか?
- 26. Postgresはによってタプルを見つけて、私は2つのテーブル</p> <p><strong>テーブル</strong><br> ID <br> タイトル<br> 年</p> <hr> <p><strong>表B</strong><br> ID <br> を持っている他のテーブル
- 27. VIM:</p> <pre><code><p> Hello </p> </code></pre> <p>そして、私はそれ</p> <pre><code><p>Hello</p> </code></pre> <p>ようにしたい私は、カーソルを置くしたいと思います:次の非空白文字まで、すべての空白を削除
- 28. 「<%:」は何をしますか?</p> <pre><code><%: Model.FirstName %> </code></pre> <p>「<%:」何をん:行う
- 29. 検索は「.. CD」私はディレクトリ内の「ホーム」だと私は</p> <pre><code>find . -iname *.mov </code></pre> <p>このコマンドを実行し、それが</p> <pre><code>./root/movies/Corey/holtorf/Intro.mov </code></pre> <p>今、私を生成し、再帰的に
- 30. PHP <<< OUTとOUT;
really_emptyを定義することもできますか?メソッドを "配列コンテンツクラス"(例えばString)上に作成し、それを空のメソッドのように使用します。私はこれをアドバイスしていない、ちょうどあなたができると言って.. – Johannes