1. 首页 > 笙耀百科 >

c++截取字符串 c截取字符串前几位的方法

c语言字符串提取与合成问题?

那么可以:

#include {Convert.ToInt16(aa[i].ToString());

c++截取字符串 c截取字符串前几位的方法c++截取字符串 c截取字符串前几位的方法


void func(char s)

{int i;

for(i=0;s[i]用fscanf()就可以啦,;i++)

for(i=0;s[i];i++)

if(i%2)

}int main()

gets(s);

func(s);

return 0;

}

#include

int main()

int i,j,k;

gets(s);

if(i%2==0)s1[j++]=s[i];

for(i=k=0;s[i];i++)

if(i%2)s2[k++]=s[i];

puts(s2);

for(i=0;s2[i];i++)

s1[j++]=s2[i];

return 0;

}

c语言截断字符串

{if(str[i-1]>='0'&&str[i-1]<='9') //否则判断前一个元素是不是数字.是的话输出一个空格.printf(" "); }

如果是VC++可以用MFC,

{char str[100];

CString.Mid(int iFirst,

{printf("%3c",y[j]);

int nCount

) const;

) const;

如果是纯C,

char szS[] ="1234:012014072000000001:abcdefgskskjdfskdjskfjsfsdjf";

char pszS3 = new char(strlen(szS));

strncpy(szS1, szS, 4);

szS1[4] = 0;

strncpy(szS2, szS + 5, 18);

szS2[18] = 0;

strcpy(szS3, szS + 24);

如何用C语言实现取字符串数组的后两位并排序?

首先你这样的问题,一般情况用序列的方式比较字符串是XML格式的吧?这个不用自己写的,.Net Framework有提供相应的类和实现。好。如

//已经在W{data[top++]=sum;IN-TC上验证。 #include int main() { char strcut(char ,int); char str[]="abcdefg"; printf("%s",strcut(str,3)); getch(); } char strcut(char str[],int

C语言如何取一串字符串中的某个字符

c语言的话,可以直接用str[i]来获取字符串中的%c",a[0],b[0]);任意一个字符的。。为char类型。。

比如 char c = str[0];。。

C中的字符串就是一个字符数组。

如:

char s[10]="asdasdas";

char char szS1[5],szS2[19];c;

取最左边的字符,就是c=s[0]%[^,] 这样的结构 ^后面的是单字符;

c语言怎么提取字符串单词

char ch2 = p

我是提取一段文字,也在网上找了好久,没找到合适的,只好自己编写了一个函数,你看看对你有没有帮助。

// 匹配字符串 m_Yuantext 是被提取的文件, m_guanjian 是索引关键字

inint addr2 = addr;t CMy500Dlg::Guanjianzhi(CString m_Yuantext, CString m_guanjian)

{// TODO: 在此处添加实现代码.

int ddr = 0;//

for (int dd = m_Yuantext.GetLength(); dd; dd--)

{ddr = m_Yuantext.Find(m_guanjian.Mid(0), ddr);//查找个关键字

if (ddr != -1)//找到个关键字

{int addr = m_guanjian.GetLength();

addr--;//去掉已经匹配的个关然后我反驳一下 楼上 sscanf是可以用正则表达式的键字

for (; addr; addr--)//如果有两个或者两个以上的关键字,就依次匹配 addr 个关键字

{if (m_Yuantext.Mid(ddr + (addr2 - addr)) != m_guanjian.Mid(addr2 - addr))//依次匹配关键字

{break;//匹配失败跳出本次循环

}}

return ddr;//返回个关键字的索引

}else

{break;//匹配失败跳出本次循环

}}

return -1;//返回匹配失败

}

c语言编程,关于sscanf通过中文逗号截取字符串的问题

char str[]="this is a string";

如s显示canf(%d,%d,i1,i2);这样输入时必须要是1,2这样输入,要是%s输入字符串的话我不太清楚。

还有,中文字符编码是两个字节的,%[^,]是不对的,就像楼上说的^后面必须接单字节字符,如果你将中文字符拆分为两个字节,将两个字节分别以转义形式屏蔽的话也许可以。我电脑没装vs,所以没测试,你可以去测试一下看看。^_^

首先我要大言不惭说一句 在C/C++版块 折腾文件 字符串 我也是前十名的人物

接下来 我回答楼主

而不是中文的 逗号 是双字节的

在C里算是for(i=j=0;s[i];i++) 字符串

sscanf不支持中文,也不支持正则表达式。

sscanf对中文进行扫描,结果不可预知。

你可以在字符串中,自己查找逗号,然后再从逗号开始出sscanf。

C语言中如何将文件中的某行的字符串读取出来?

{char s[100];

所谓的某行你没有给出确切的定义,通常读文件采用的方法是将文件内容的全部,或者部分保存在缓存中,如果你是想读取第几行,那么就可以使用字符指针,寻找缓存中的'\n',并进行计数,找到想要的行。

如果想读取的是某个关键字所在的行,同样是可以使用字符指针,使用strncmp方法寻找关键字所在的位置,或者直接使用strstr方法查找。

#include

void main ()

{char s1[80],s2[80];

int a1,a2;

if((fp=fopen("t.txt","r"))==NULL)

{printf("oSTORE'abcdefghijklm'pen wrong");

exit(1);

fprintf(stdout,"%s,%s,%d,%d\n",s1,s2,a1,a2);

}把ABvar reg = new Regex(@"<\w+>(?\w+)<\/\w+>");C DEF 10 20存在t.txt中

读取并保存在 s1,s2,a1,a2

输出

scanf("%s",s); //这是读入一个字符串,遇到空格回车就停止读入

gets(s); //这个是读入一整行,只有遇到回车才停止读入

char a[80],b[80];

int c,d;

FILE fp=fopen("data.txt","r");

fscanf(fp,"%s %s %d %d",a,b,&c,&d);

C#中提取字符串?

text = System.Text.RegularExpressions.Regex.Replace(text, @"<(.[^>])>", "", System.Text.RegularExpressions.RegexOptions.IgnoreCase);

我是完全的:做法有点怪,就通过每个字符,来看是否可以Int.ParseInt(),来判断

?SUBSTR(mystring

class Program

{public String GetAll(String s){

StringBuilder l = new StringBuilder();

CharEnumerator c= s.GetEnumerator();

while (c.MoveNext())

{int.Parse(c.Current.ToString());

l.Append(c.Current);

}catch (Exception ex)

{// l.Append(null);

}// c.MoveNext();

} return l.ToString();

}static void Main(string[] args)

{String s = "112233";

String ss= new Program().GetAll(s);

Console.WriteLine(ss);

Console.Read();

}}

}

不够具体,这样行不。

string aa, bb;

int i,j;

string []str = new string[50] ;

aa = ":112233";

bb = "";

for (i = 0; i < aa.Length; i++)

bb = bb + aa[i];

}catch

{if (bb != "")

{str [j] = bb;

j++;

bb = "";

}}

}for (i=0;i

{maskedTextBox1 .Text = maskedTextBox1 .Text+str[i];

}

var match = reg.Matches(str);

var temp = match.Cast().Select(x=>x.Groups["text"].Value);

用正则表达式子替换啊,

st{tryring text = "112233";

将这个字符串加载成xml。然后读取节点的值。那样最简单了。。

[Serizerbel()]

public class Student

{public string Name{get;set;}

public string Adress{get;set;}

public string Email {get;set;}

}使用序列化类实现

生成节点如下:

什么都可以,别放特殊字符

什么都可以,别放特殊字符

}

using System.Xml;

其中的XmlReader、XmlWriter、XmlNode等类比较核心,找本书来研究一下吧。

用string.split()方法保存到string类型的就可以了啊

C# 字符串截取两指定之间的字符

if(i%2==0)

string a="1、G1P....";

按格式写就可以了

ststring str = "112233";ring[] b=a.Split(';');//b里面保存的是

//这b里面应该就是你需要的吧,如果顿号前面的数字和顿号不需要的话也可以截取掉

string[] c=new string[c.Length];

for(int i=0;i

int c=b[i].IndexOf('、');//查找顿号的位置

int d=b[i].Length-b[i].IndexOf('、');//获取需要截取的字符串长度

c[i]=b[i].Substring(c+1,d-1);//+1是因为Substring包括前面,但不包括后面。-1是因为前面+了个1,这里需要剪掉

}

你的特定字符串是固定的,不会变吧?

string str = "1111a@@@@@@@@bbbb2222";Match m = Regex.Match(str, @"a([\s\S]?)bbbb");if(m.Success){Response.Write(m.Result("$1"));// 输出a与bbbb之间的字符串}

以上回答你满意么?

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至836084111@qq.com 举报,一经查实,本站将立刻删除。

联系我们

工作日:9:30-18:30,节假日休息