Tag: split

将字符数组拆分为两个字符数组

我想拆分一个包含两个“字符串”的char数组,用“|”分隔 分成两个字符的char。 这是我的示例代码。 void splitChar(const char *text, char *text1, char *text2) { for (;*text!=’\0′ && *text != ‘|’;) *text1++ = *text++; *text1 = ‘\0′; for (;*++text!=’\0’;) *text2++ = *text; *text2 = ‘\0’; } int main(int argc, char* argv[]) { char *text = “monday|tuesday”, text1[255], text2 [255]; splitChar (text, text1, text2); return 0; } 我有两个问题: 如何在C中进一步改进此代码(例如,将其重写为1循环)。 […]

基于空格或“双引号字符串”将字符串解析为数组

我试图取一个用户输入字符串并解析为一个名为char * whole_line [100]的数组; 其中每个单词放在数组的不同索引处但如果字符串的一部分由引号封装,则应将其放在单个索引中。 所以,如果我有 char buffer[1024]={0,}; fgets(buffer, 1024, stdin); 示例输入:“word filename.txt”这是一个字符串,shoudl占用输出数组中的一个索引“; tokenizer=strtok(buffer,” “);//break up by spaces do{ if(strchr(tokenizer,'”‘)){//check is a word starts with a ” is_string=YES; entire_line[i]=tokenizer;// if so, put that word into current index tokenizer=strtok(NULL,”\””); //should get rest of string until end ” strcat(entire_line[i],tokenizer); //append the two together, ill take care of […]

在C中双重拆分

好。 例如,我在我的txt文件中有这一行: 1|1,12;7,19;6,4;8,19;2,2 如您所见,它有两部分,以|分隔 。 我没有问题得到两个部分,并分离第二部分1,12;7,19;6,4;8,19;2,2使用; 分隔器。 但我确实有进一步分离的问题,获得每组的第一和第二个数字。 这是我目前的代码: result = strtok(result, “;”); while(result != NULL ) { printf(“%s\n”, result); result = strtok(NULL, “;”); } 它输出我: 1,12 7,19 6,4 8,19 2,2 太好了。 但是,当我尝试“strtok”(我正在使用此方法进行拆分)时,如下所示: result = strtok(result, “;”); while(result != NULL ) { //printf(“%s\n”, result); help = strtok(result, “,”); while(help != NULL) { printf(“”, help); help […]

当一行中有2个分隔符时,将字符串拆分为C中的标记

我正在使用strtok()函数将字符串拆分为Tokens。问题是当行中有2个分隔符时。 /* strtok example */ #include #include int main () { char str[] =”Test= 0.28,0.0,1,,1.9,2.2,1.0,,8,4,,,42,,”; char * pch; printf (“Splitting string \”%s\” into tokens:\n”,str); pch = strtok (str,”, “); while (pch != NULL) { printf (“Token = %s\n”,pch); pch = strtok (NULL, “, “); } return 0; } 并输出: Splitting string “Test= 0.28,0.0,1,,1.9,2.2,1.0,,8,4,,,42,,” into tokens: […]

C将输入文本文件解析为单词

我试图解析输入文件(包含具有多行和分隔符的文本文档,即“!,。?”)为单词。 我的function’分裂function’是: int splitInput(fp) { int i= 0; char line[255]; char *array[5000]; int x; while (fgets(line, sizeof(line), fp) != NULL) { array[i] = strtok(line, “,.!? \n”); printf(“Check print – word %i:%s:\n”,i, array[i]); i++; } return 0; }

ORA-01795:列表中的最大表达式数为1000,如何拆分字符串

如何拆分以下字符串? Ax IN (changeList), changeList具有以下值,因此它使得子句如下: Ax IN (HEXTORAW(‘1E2956B9266F11DDA85810000000C959’),HEXTORAW (‘ADD834AD6A3911DF923C10000000C959’),HEX……….. 上面的IN有超过1000个值,因此ORA-01795错误,如何修改它以便我拥有 AX IN(id1,.. id999)或Ax IN(id1000,…),任何c代码都可以帮助我……

将字符串拆分为标记并将其保存在数组中

如何将字符串拆分为一个标记,然后将它们保存在一个数组中? 具体来说,我有一个字符串”abc/qwe/jkh” 。 我想分开”/” ,然后将令牌保存到数组中。 输出将是这样的 array[0] = “abc” array[1] = “qwe” array[2] = “jkh” 请帮我