2012-02-21 181 views
7

我有這樣的字符串'some-dasd\dasd-dasdas\dasdas-dasd-das\dsad'。 我需要將字符串拆分爲兩個不同的符號'\''-',所以我想獲得數組['some', 'dasd', 'dasd', 'dasdas', 'dasdas', 'dasd', 'das' ,'dsad']由兩個不同的分隔符分割的字符串

這樣做的最佳方法是什麼?

回答

14
"ome-dasd\dasd-dasdas\dasdas-dasd-das\dsad".split(/\\|-/) 

應該這樣做。

+0

@Russell謝謝。但它不是最好的;) – lucapette 2012-02-21 10:23:37

+1

但這不適用於分隔符相鄰的情況\ - 給你一些空白元素。 – 2013-10-21 23:54:42

11

可以使用正則表達式分割字符串:

mystring.split(/[-\\]/) 
+0

比我的好一點... – lucapette 2012-02-21 10:24:08

+0

@lucapette你將不得不原諒我對正則表達式的相對無知 - 這個答案和你的答案看起來和我相似嗎?爲什麼一個會比另一個好? – Russell 2012-02-21 10:27:25

+3

@Russel他們在*匹配方面絕對等價,但這個更簡潔,更易於維護。例如,假設你想添加'%'。這個將會變成'[ - \\%]',我會變成'\\ | - |%'。也許這也是品味的問題:) – lucapette 2012-02-21 10:33:15