私はこのようになり、いくつかの文字列を持っています。どのようにループ内のこれらの文字列すべてからかっこを削除できますか?Rubyの文字列から特定の文字を切り取る方法は?</p> <pre><code>"((String1))" </code></pre> <p>彼らはすべての異なる長さは、次のとおりです。
答えて
正規表現でString#gsub
を使用する:
"((String1))".gsub(/^\(+|\)+$/, '')
# => "String1"
"((((((parentheses)))".gsub(/^\(+|\)+$/, '')
# => " parentheses "
これは、周囲の括弧のみを削除します。
"((((((This (is) string)))".gsub(/^\(+|\)+$/, '')
# => " This (is) string "
+1(囲む括弧のみを削除)。 –
あなただけの、あなたが文字列にnegative indexesを使用することができ、最初の2つの文字と最後の2を削除する場合:
s = "((String1))"
s = s[2...-2]
p s # => "String1"
を
文字列からすべてのカッコを削除する場合は、文字列クラスのdeleteメソッドを使用できます。
この出くわすとパフォーマンスをお探しの方にs = "((String1))"
s.delete! '()'
p s # => "String1"
これは、(見た目に)OPが望むものではない、文字列の中央にある括弧もすべて削除します。これが必要な場合は、これは最も洗練されたソリューションです。 – iamnotmaynard
#delete
と#tr
がgsub
より速い程度の速度で同じと2-4xあるように、それが見えます。文字クラスには何もしないでマッチ - 使用して
1)Negative character class pattern matching
irb(main)> "((String1))"[/[^()]+/]
=> "String1"
^
は:ここでは
text = "Here is a string with/some forwa/rd slashes"
tr = Benchmark.measure { 10000.times { text.tr('/', '') } }
# tr.total => 0.01
delete = Benchmark.measure { 10000.times { text.delete('/') } }
# delete.total => 0.01
gsub = Benchmark.measure { 10000.times { text.gsub('/', '') } }
# gsub.total => 0.02 - 0.04
はこれを達成するためのさらに短い方法です。 charachterクラスの内部には、(
と)
があります。他にも言及しているように、グローバル置換「AKA:gsub」を使用しています。
irb(main)> "((String1))".gsub(/[)(]/, '')
=> "String1"
- 1. だから私は私の<code>config.fish</code>に次の文字列を持っている、と<code>init.vim</code>文字列
- 2. 彼らはJavaScriptの文字列で</p> <p><strong>/</strong></p> <p>代わりの</p> <p><strong>"</strong></p> <p>を使用しないのはなぜJavaScriptの文字列の引用符は、メソッド
- 3. 正規表現:</p> <pre><code>foo/:something/bar/:somethingelse </code></pre> <p>どのように私は2番目の場合ではオプション<code>/</code>終了の区切り文字を考慮し<code>something</code>と<code>somethingelse</code>をキャプチャすることができます。次の文字列と区切り文字とオプションの終了区切り文字
- 4. は、私は、文字列中で</li> </ol> <p>を2つのリスト</p> <ol> <li>ネストされた文字列のリスト、および</li> <li>リストを持っている「system.collections.generic.list文字列」
- 5. Pythonは私が<em>文字列</em>次ている文字列
- 6. のArrayList <Hashtableの<文字列から値を取得する方法を、ArrayListの<String> >>
- 7. Javaのエンコードは、エンコード文字列の文字列をエンコード</p> <pre><code>String encoded=encodeFileToBase64Binary("file.fmr"); </code></pre> <p>//を取得する//他のエンコードされた文字列と一致するにはBase64文字列に
- 8. <<<と終了区切り文字で文字列を埋めることができるときは、何を呼び出すのですか?
- 9. のJava 8の変換リスト<地図<文字列、文字列>マップする<文字列、地図<文字列、文字列>>
- 10. リスト<カンマ区切り文字列> =>リスト<string>?
- 11. 私は単一の文字列引数、<strong>テキスト</strong>を取り、言葉で測定<strong>テキスト</strong>、最長の文の長さを返す関数を記述しようとしています与えられた文字列
- 12. のJavaのHashMapに区切り文字で一覧<String>変換<文字列、文字列>
- 13. ObservableCollectionの型から文字列 "System.Collections.ObjectModel.ObservableCollection <System.String>"を取得する<string>?
- 14. この[文字列キー]私は<code>Microsoft.AspNetCore.Http</code>アセンブリから<code>IRequestCookieCollection</code>コードを見
- 15. 指定されたURLに文字列を取得する方法は?私は、文字列データurl.but</p> <p>ディスプレイから文字列データや画像データを取得しようとしています</p> <p>
- 16. 区切り文字列の各項目にアクセスして一致する項目を一覧表示する方法は?</p> <pre><code>box = ["apple","orange","banana", "water"] </code></pre> <p>そして、この文字列:
- 17. PHPは特殊文字「&」を、私は文字<code>&</code></p> <p>と私は<code>&</code>を含む<code>$_POST</code>から同じ文字列を持っているを含む文字列を持っている
- 18. XML文字列は、私はこの<strong>文字列</strong>まし
- 19. HTML文字列のすべてのimgタグを置き換える方法<a><img></a>?
- 20. PLSQLは、私が</p> <pre><code>'"sadf asd " <[email protected]>' '"[email protected] " <[email protected]>' </code></pre> <p>を次のように入力文字列を持って引ける文字列から
- 21. 文字列内の未知のパターンを検索する最も効率的な方法は?のいずれかを知らなくても <ul> <li></p>回以上</li> <li>が</li> <li>は、他の既知のパターン</li> </ul> <p>の部分文字列ではありません以上1文字の長さで発生します。
- 22. のpython:私のような文字列からオブジェを取得しようと</p> <pre><code>exec("mydict_%=%" % (key, value)) </code></pre> <p>::私はリストからdynamiquly辞書を作成している文字列
- 23. スプリットハイブエディタ内の区切り文字に基づいて、列<code>india</code>に<code>'|'</code>と<code>korea</code></p> <p>に基づいて<code>'india|koria'</code>のような文字列を分割するクエリを作成する方法
- 24. 作成方法同じ文字からなる長さの文字列を複数回繰り返しますか?私は、文字<code>A</code>の<code>n</code>インスタンスで構成されます<code>String s</code>をしたい場合は
- 25. Entity Frameworkのは <p></p>エラーは、文字列
- 26. は、私は上記の文字列から文字列<code>lookup</code>を抽出したい以下の文字列</p> <pre><code>[function('lookup')] </code></pre> <p>を持っている部分文字列の正規表現
- 27. C++文字列オブジェクトの表示/印刷方法は? cout << int works、cout << string not
- 28. オプション<String>から文字列を返す方法は?
- 29. </em><strong>と</strong><em>文字列(既に存在)</strong><em>番号</em> exept与えられた文字列から<strong>のすべてを削除するには、このコードを変更する方法にpreg_replace
- 30. Perlの文字列の乗算がundefで警告しないのはなぜですか?</p> <pre><code>$foo . '' </code></pre> <p>と</p> <pre><code>"$foo" </code></pre> <p>
括弧を削除するか、「ランダム」文字列の最初の2文字と最後の2文字を削除しますか? (実際にランダム?) – iamnotmaynard
"((String1))" [2 ... -2]#=> "String1" – iamnotmaynard
http://www.ruby-doc.org/core-1.9.3/String.html – iamnotmaynard