2013-05-30 1 views
0

NodeJS에서는 쉼표로 된 태그를 쉼표로 구분하여 내 모델에서 분리하여 DB에 저장합니다.NodeJS를 사용하여 문자열의 변수의 다국어 값을 얻는 방법은 무엇입니까?

VAR의 getTags = 함수 (태그) { 복귀 tags.join ('') }

VAR의 setTags = 함수 (태그) { 복귀 tags.split ('') }

변수의 다국어 값을 저장하는 데 사용하고 싶습니다. 이되기 위해 수프와 분할 [: : : ES] SOPA [EN] :

내가 이름을 얻으려면 :의가 있다고 가정 해 봅시다

"이름": { "말이지" "SOPA" "엉 ":"수프 " }

어떻게하면됩니까? 그것을 할 수있는 더 좋은 방법이 있습니까? 정규식은 해결책인가?

답변

0

RegExp가 귀하의 케이스에 적합합니다. 여기에 몇 가지 코드가 있습니다.

function parse_value(value) { 
    var hash = {}; 
    var values= value.split(/,/); 
    for (var i = 0; i < values.length; i++) { 
     var pair = values[i].split(/:/); 
     hash[pair[0]] = pair[1]; 
    } 
    return hash; 
} 

function parse_data(data) { 
    if (/^(\w+):\s*(.*)$/.test(data)) { 
     var name = RegExp.$1; 
     var value = RegExp.$2; 

     var hash = parse_value(value); 

     var output = {}; 
     output[name] = hash; 
     return output; 
    } 
    else { 
     return {}; 
    } 
} 
var data = "Name: es:Sopa,en:soup"; 
console.log(parse_data(data)); //=> { Name: { es: 'Sopa', en: 'Soup' } } 
+0

감사합니다. 내 데이터는 실제로 "es : Sopa, en : soup"입니다. RegExp를 업데이트 하시겠습니까? 사과하십시오. – Burak

+0

@Burak 업데이트되었습니다. 그것을 확인하시기 바랍니다. –

관련 문제