1
我有以下正則表達式應該匹配所有圍繞它們的括號(包括括號)的單詞,但它只匹配一個案例。我究竟做錯了什麼?正則表達式 - 匹配括號中的所有單詞
"(e), (f), and (g)".match(/\(\w+\)/)
=> #<MatchData "(e)">
輸出應該是:
=> #<MatchData "(e)", 1: "(f)", 2: "(g)">
我有以下正則表達式應該匹配所有圍繞它們的括號(包括括號)的單詞,但它只匹配一個案例。我究竟做錯了什麼?正則表達式 - 匹配括號中的所有單詞
"(e), (f), and (g)".match(/\(\w+\)/)
=> #<MatchData "(e)">
輸出應該是:
=> #<MatchData "(e)", 1: "(f)", 2: "(g)">
使用scan()
代替。它返回一個包含所有匹配項的數組。 match()
只會返回第一個匹配項。
"(e), (f), and (g)".scan(/\(\w+\)/)
正是我在找的東西。完全忘了'scan()'。 – 2014-08-28 15:40:58
不是Ruby編碼器,而是你嘗試['scan()'](http://stackoverflow.com/a/80387/1438393)而不是? – 2014-08-28 15:30:08
請注意,如果有非機會可能需要使用表達式['/\([^)]+\/'](http://www.rubular.com/r/SkpBW6ghDC) \ w'字符。 – Sam 2014-08-28 15:33:00
第一場比賽後紅寶石'比賽'停止嗎?是否需要全球標誌'/ g'? – sln 2014-08-28 15:35:38