2014-10-01 54 views
3

我想通過一行中的";"" "","分隔符將字符串拆分爲一個數組。有沒有辦法做到這一點,而不使用正則表達式?在Ruby中爲.split方法使用多個分隔符

+3

不,不是 - 爲什麼你不想使用正則表達式? ''你沒有拆分數組。'' – 2014-10-01 17:01:56

+1

什麼阻止你不使用_regex_? – 2014-10-01 17:05:25

+0

拆分數組或字符串?請舉一個例子。 – daremkd 2014-10-01 17:15:54

回答

4

只需將一個分隔符替換爲分隔符,然後將其拆分即可。

p "aaa;bbb ccc,ddd".tr(";,"," ").split #=> ["aaa", "bbb", "ccc", "ddd"] 
+0

喜歡它!這是一個非常聰明的解決方案。非常感謝! – 2014-10-01 19:01:26

+0

@steenslag哦,錯過了在OP不知何故:/ – 2014-10-01 19:23:59

7

是的。可能的,但正則表達式

string.split(/[;, ]/) 
+4

'array.split(/ [,;] /)' – 2014-10-01 17:12:36

+0

@MarkThomas是的..太好了! – 2014-10-01 17:14:55

+0

@MarkThomas我們沒有方法'Array#split' ..:p – 2014-10-01 17:17:28

相關問題