XML 및 일반 문자열을 포함 할 수있는 문자열이 있습니다. 문자열의 모든 인스턴스에 대해 <math....</math>
을 파싱해야합니다. 어떻게하면이 문자열의 여러 섹션 (<math>
에서 </math>
까지)을 파싱 할 수 있습니까?C#에서 문자열의 여러 섹션을 구문 분석하는 명확한 방법은 무엇입니까?
Here is some content <math
xmlns="http://www.w3.org/1998/Math/MathML">
<mi>a</mi><mo>≠</mo><mn>0</mn> </math>, that is mixed in with
this other content <math xmlns="http://www.w3.org/1998/Math/MathML">
<mi>a</mi><msup><mi>x</mi><mn>2</mn></msup> <mo>+</mo>
<mi>b</mi><mi>x</mi> <mo>+</mo> <mi>c</mi> <mo>=</mo> <mn>0</mn>
</math> we want to be able to seperate this string
배경 : 나는이 질문은 일반적인 만들기 위해 노력했다. 구체적으로 MVC3 인코딩과 Raw를 비교하려고합니다. 기본적으로 모든 것을 인코딩합니다. MathML을 인코딩하는 것을 원하지 않지만 다른 모든 것을 인코딩하려고합니다. 그래서 그것의 일부를 Html.Raw (MathML 부분)로 렌더링하고 나머지는 일반적으로 인코딩 된 문자열로 렌더링하려고합니다.
있습니까? 다소 일관성없는 데이터 형식을 "깨끗한"방식으로 구문 분석하는 것은 종종 어렵습니다. –
예,이 데이터의 입력은 문자열입니다. 나는 더 나은 파싱을 돕기 위해 무엇이든 변환 할 수 있다고 생각한다. – Shane
음, 문자열의 형식을 의미합니다. 문자열은 괜찮지 만 대부분의 경우 XML을 non-xml과 혼합하는 것은 나쁜 생각입니다. 호환되는 XML이라면 .NET의 XML 파서를 사용할 수 있습니다. –