2012-02-23 2 views
1

편리한 데이터 구조로 속성 및 값을 추출하는 조언과 훌륭한 솔루션을 찾고 있습니다.C# 문자열 분할 우아한 솔루션

Text="{Binding Path=SelectedValue,Mode=TwoWay}" 

솔루션 종류의 무언가를 가지고하는 것입니다

List<string1, string2> where string1=Path, string2=SelectedValue 

편집 :

Command="{Binding ExecuteSearchCommand} 
:

가, 그것은 GENERIC하기 위해 두 가지를 현재와 이해를 할 수 있습니다

+0

경로? – mmix

+1

이 비명 "정규식" – m0skit0

+0

이것은 [XAML 바인딩] (http://msdn.microsoft.com/en-us/library/ms752300.aspx)처럼 보입니다. 그렇지? 그렇다면 가능한 모든 값 집합을 파싱하거나 명시 적으로 예제를 파싱 할 수 있어야합니까? –

답변

3

사용 : 동적 목록을 기반으로 바인딩을 생성 할

var result = Regex.Matches(input, @"(\w+)=(\w+)").Cast<Match>() 
    .Select(m => new 
     { 
      Property = m.Groups[1].Value, 
      Value = m.Groups[2].Value 
     }); 
+0

1을 "Path = SelectedValue, Mode"로 그룹화하지 않습니까? Regexes는 기본적으로 (최소한 Perl에서는) 욕심이 많습니다. – m0skit0

+0

@ m0skit0,'\ w'는 영숫자 또는 밑줄입니다. 따라서','와 일치하지 않습니다. –

+0

네 말이 맞아 내가 바보 야. – m0skit0

0

문자열을 약간 재 형식화하여 일치시킬 수있는 옵션이있는 경우 JSON 사양 (예 : 로 =를 대체합니다, 당신은) 다음 방법 중 하나를 사용할 수 있습니다

Parsing JSON using Json.net

Parse JSON in C#