【问题标题】:Extracting part of a string in C [duplicate]在C中提取字符串的一部分[重复]
【发布时间】:2015-02-28 19:23:15
【问题描述】:

我想在 C 语言的给定范围内提取字符串的一部分。我尝试了strcpy(),但它只从字符串中提取前 n 个字符。
我怎样才能做到这一点?

【问题讨论】:

  • 您可以使用一个简单的循环来做到这一点:for(i=0 ,j = pos ; i<len ;j++ ,i++) s[i] = a[j]; 这里 pos 是您要复制的原始字符串的位置。 len 是您要复制的字符数,即长度。 “s”是我们保存复制值的临时数组。
  • @RobinHalder:但不要忘记显示空终止符,您是否需要检查字符串是否至少与子字符串的起始位置一样长?
  • 我只是给他一个观点,因为问题已经得到解答,他如何实现它:)

标签: c


【解决方案1】:

您正在寻找的是 Substring()。这是一个简单的例子:

string Str = "I only want to extract \"want\" from this string.";
string Str2 = Str.Substring(7, 4);
MessageBox.Show("String 1: " + Str +" - String 2: "+Str2);

【讨论】:

  • 欢迎来到 Stack Overflow。请尽快阅读About 页面。请注意,这个问题被标记为c 而不是c# 或类似的东西。您提供的不是使用标准 C 表示法。它可能是 C++ 或其他语言,但它不是标准 C。我建议删除此答案。以后,请注意标记和问题内容(它确实明确表示“C”),并确保您的答案适合问题。
猜你喜欢
  • 2014-12-11
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2022-01-18
  • 2012-03-28
  • 2018-11-07
  • 2015-02-02
相关资源
最近更新 更多