2012-02-21 3 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

+1

그러나 구분 기호가 서로 인접한 경우에는 작동하지 않습니다. - 일부 빈 요소가 있습니다. –

11

당신은 정규 표현식을 사용하여 문자열을 분할 할 수 있습니다 :

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

내 생각보다 조금 나아 ... – lucapette

+0

@lucapette 당신은 정규 표현식에 대한 내 상대적인 무지를 변명해야 할 것입니다.이 답변과 당신의 대답은 모두 나에게 상응하는 것처럼 보입니까? 왜 다른 사람보다 나은 사람이 있을까요? – Russell

+3

@Russel 그들은 * matching *이라는 측면에서 절대적으로 동등하지만이 것은 더 간결하며 유지 보수가 쉽습니다. 예를 들어'% '를 추가한다고 가정하십시오. 이 파일은'[- \\ %]'이 될 것이고, 내 파일은'\\ | - | %'가 될 것입니다. 그리고 아마도 맛의 문제 일 수도 있습니다. :) – lucapette

관련 문제