: P
Chỉ cần một lưu ý, tôi nghĩ rằng hầu hết các thuật toán ở đây sẽ không kiểm tra xem bạn có 2 hoặc nhiều hơn các không gian với nhau, vì vậy nó có thể nhận được một không gian như từ thứ hai.
Tôi không biết nếu điều đó một cách tốt nhất, nhưng tôi đã có một niềm vui nho nhỏ Linqing nó: P (điều tốt là nó cho phép bạn chọn số lượng dấu cách/từ bạn muốn để mất)
var text = "a sdasdf ad a";
int numSpaces = 2;
var result = text.TakeWhile(c =>
{
if (c==' ')
numSpaces--;
if (numSpaces <= 0)
return false;
return true;
});
text = new string(result.ToArray());
tôi cũng có @ câu trả lời ho và biến nó thành một chu kỳ, do đó bạn lại có thể sử dụng nó cho càng nhiều từ như bạn muốn: P
string str = "My Test String hello world";
int numberOfSpaces = 3;
int index = str.IndexOf(' ');
while (--numberOfSpaces>0)
{
index = str.IndexOf(' ', index + 1);
}
string result = str.Substring(0, index);
Nguồn
2010-04-08 17:39:52
Sẽ luôn có 1 dấu cách giữa các từ? Nếu không, hầu hết các giải pháp dưới đây không hợp lệ. –