How to trim punctuation in C

1 Answer

0 votes
#include <stdio.h>
#include <string.h>

#define SIZE 5

void TrimPunctuation(char *s, char trimmed[]) {
    char charsToTrim[] = "*!,._";
    int start = 0;
    int end = strlen(s) - 1;

    while (start <= end && strchr(charsToTrim, s[start]) != NULL) {
        start++;
    }
    while (end >= start && strchr(charsToTrim, s[end]) != NULL) {
        end--;
    }

    strncpy(trimmed, s + start, end - start + 1);
    trimmed[end - start + 1] = '\0'; // Null-terminate the string
}

int main() {
    char *array[SIZE] = {
        "C-Sharp!!!",
        "...c",
        "java,,,",
        "c++",
        "**python__"
    };
    char trimmed[128] = "";
    
    for (int i = 0; i < SIZE; i++) {
        TrimPunctuation(array[i], trimmed);
        puts(trimmed);
    }

    return 0;
}


  
/*
run:
  
C-Sharp
c
java
c++
python

*/

 



answered Nov 23, 2024 by avibootz

Related questions

3 answers 100 views
100 views asked Nov 23, 2024 by avibootz
1 answer 118 views
118 views asked Nov 23, 2024 by avibootz
1 answer 123 views
123 views asked Nov 23, 2024 by avibootz
1 answer 117 views
117 views asked Nov 23, 2024 by avibootz
1 answer 94 views
94 views asked Nov 23, 2024 by avibootz
1 answer 95 views
95 views asked Nov 23, 2024 by avibootz
1 answer 86 views
...