0
문자열에서 특정 줄을 제거하기 위해 QString::remove(QString)
을 사용하고 있지만, 제거 된 문자열이 실제로 제거되지 않는다는 작은 문제가 있습니다. 대신 빈 문자열로 대체됩니다. 전체 줄을 완전히 제거하고 싶습니다.Qt/C++ - 문자열에서 전체 줄을 제거하는 방법?
원래 문자열 : 여기
...
Hi there,
Alaa Joseph is here!
The above line is going to be removed :P
It's the magic of C++ :]
...
내가 해봤 기능 :
test1 = originalString.replace("Alaa Joseph is here!", "");
test2 = originalString.remove("Alaa Joseph is here!"); // Same result as the previous
출력 :
...
Hi there,
The above line is going to be removed :P
It's the magic of C++ :]
...
로 당신이 위를 본다, 그것은 전체 라인을 제거하지 않고 텍스트를 제거했다! 난 그냥이 할 각 라인 &을 반복 할 수 알고
...
Hi there,
The above line is going to be removed :P
It's the magic of C++ :]
...
:
나는 이렇게 될 출력을 필요
QStringList list = test1.split("\n");
list.removeAt(0);
int n = list.length();
list.removeAt(n - 1);
QString noEmptyLines = list.join("\n");
을하지만 난 몰라 모든 빈 줄을 제거하고 내용을 제거한 항목 만 제거하여 전체 문서 형식을 망칠 수 있습니다.
test2 = originalString.remove("Alaa Joseph is here!\n");
이 너무
\n
을 삭제해야합니다 그리고 당신은 올바른 출력을 얻을 것이다 :
"전체 줄을 제거하지 않고 텍스트를 제거했습니다!" 아니. 줄의 일부인 캐리지 리턴까지 줄의 텍스트를 제거했습니다. "\ n"은 문자 그 자체입니다. – BaCaRoZzo