3

我正在尝试将部分文本从文本框中复制到另一个字符串。例如,如果我的文本框包含 10 个字符,我想从字符 3 复制到字符 7 到另一个调用 TEST 的字符串。我们该怎么做呢?

4

4 回答 4

6
// when textbox contains "ABCDEFGHIJ", the result will be "CDEFG"
string result = textBox.Text.Substring(2, 5);

请记住,这将对短于 7 个字符的字符串抛出异常,因此您可能需要添加一些长度检查。

于 2012-07-20T08:34:43.413 回答
5
// Start at the 2nd index (0=based index)
// Take  from the 3rd to the 7th character, 
string test = textBox.Text.Substring(2, 5);
于 2012-07-20T08:32:46.723 回答
1

我认为您正在寻找的方法是 Substring。使用此方法,您可以获得从某个索引开始的字符串的任何部分。

例如:

string test = YourTextBox.Text.Substring(2, 5);

在此示例中,您将在 YourTextBox 中从索引 2 开始获取字符串的 foru 字符。

于 2012-07-20T08:36:14.653 回答
0

干得好

string test = TakePieceFromText("this is my data to work with", 2, 5);

/// <summary>
/// Takes the piece from text.
/// </summary>
/// <param name="text">The text.</param>
/// <param name="startIndex">The start index.</param>
/// <param name="length">The length.</param>
/// <returns>a piece of text</returns>
private string TakePieceFromText(string text, int startIndex, int length)
{
    if (string.IsNullOrEmpty(text))
        throw new ArgumentNullException("no text givin");

    string result = string.Empty;
    try
    {
        result = text.Substring(startIndex, length);
    }
    catch (Exception ex)
    { 
     // log exception
    }
    return result;
}
于 2012-07-20T08:43:00.320 回答