몇 주 전에 특정 하위 문자열을 기반으로 문자열을 분할하는 방법에 대해 비슷한 질문을 던졌습니다. 그러나 이제는 조금 다른 것을하고 싶습니다. 다음과 같은 줄이 있습니다. (서식에 대해 미안합니다) :정규식에서 문자열의 일부를 제외 할 때
내가 원하는 것은 모든 줄 바꿈 시퀀스에서이 줄을 나눕니다. 그러나 PA41 라인 중 하나 뒤에 PA42가있는 경우이 작업을 수행하고 싶지 않습니다. PA41과 그 뒤에 오는 PA42 라인이 같은 라인에 있도록하고 싶습니다. 나는 아무 소용이없는 몇 가지 정규 표현식을 사용하여 시도했다. 내가 찾고있는 출력은 이상적으로 다음과 같이 보일 것입니다 :
이것은 현재 사용하고있는 정규 표현식이지만, 찾고자하는 것을 성취하지 못합니다.
string[] p = Regex.Split(parameterList[selectedIndex], @"[\r\n]+(?=PA41)");
설명이 필요하면 언제든지 문의하십시오.
감사합니다. 어떤 이유로이 표현식을 사용할 때 @ "(\ r \ n) (?! PA42)"을 사용하지 않으면 실제로 분할되지 않습니다. 그러나 PA # 라인 끝 부분에 \ r \ n을 남기지 않고 별도의 라인으로 분할하고 있습니다. – almostProgramming
@almostProgramming : "\ r \ n"문자 그대로 "\"다음에 "n"또는 "r"입니까? 또는 캐리지 리턴 및 라인 피드입니까? 그 패턴의 모든 차이를 만들 것입니다,하지만 당신이 그 질문에 대한 요새를 보여 주면, 또는 그들이 문자인지 나는 모르겠다. –
그들은 실제로 캐리지 리턴과 새로운 라인입니다. 미안해, 내가 그 질문에 분명하게 말 했어야 했어. – almostProgramming