2011-01-13 7 views

答えて

2

マッチし、最後の試合をつかむ:

ニート
>> 'a_long_(string)_foo_(abc)_blabla'.scan(/_\((.*?)\)_/)[-1] 
=> ["abc"] 
+0

「スキャン」の場合+1。これは検索ツールボックスの大きな部分です。 –

0

この本:

\(([^\)]+)\)_[a-zA-Z0-9]*$ 

$1は、このようなあなたの文字列

2

なめらかでなければなりません:

str[/.*_\((.*?)\)_/,1] 
+0

、感謝... – Ralph1981

+0

あなたがそうでなければ、この、S '* ''にS' の '+'を変更する場合があります'_(foo)_'と' foo _()_ 'に失敗します。 – marcog

+0

@marcog、はい、私はいつもこのミスを修正しています。 – Nakilon

1

あなたはまた、正規表現を使用することができます。

.*_\((.*?)\)_ 
/_\((.*?)\)_/を使用して

See it

関連する問題