How to Trim a String in C - Step by Step Examples



How to Trim a String in C ?

Answer

To trim a string in C, you can create a custom function to remove leading and trailing whitespace characters.



✐ Examples

1 Trimming " Hello World "

In this example,

  1. We create a custom function named trim that takes a string as input and removes leading and trailing whitespace characters.
  2. We call the trim function with the string " Hello World ".
  3. Finally, we print the trimmed string.

C Program

#include <stdio.h>
#include <string.h>
#include <ctype.h>

void trim(char *str) {
    int i = 0, j = strlen(str) - 1;
    while (isspace(str[i]))
        i++;
    while (j > i && isspace(str[j]))
        j--;
    str[j + 1] = '\0';
    memmove(str, str + i, j - i + 2);
}

int main() {
    char str[] = "   Hello World   ";
    trim(str);
    printf("Trimmed string is: '%s'\n", str);
    return 0;
}

Output

Trimmed string is: 'Hello World'

2 Trimming leading whitespace from " apple"

In this example,

  1. We create a custom function named ltrim that takes a string as input and removes leading whitespace characters.
  2. We call the ltrim function with the string " apple".
  3. Finally, we print the trimmed string.

C Program

#include <stdio.h>
#include <string.h>
#include <ctype.h>

void ltrim(char *str) {
    int i = 0, j = strlen(str) - 1;
    while (isspace(str[i]))
        i++;
    memmove(str, str + i, j - i + 1);
    str[j - i + 1] = '\0';
}

int main() {
    char str[] = "   apple";
    ltrim(str);
    printf("Trimmed string is: '%s'\n", str);
    return 0;
}

Output

Trimmed string is: 'apple'

3 Trimming trailing whitespace from "banana "

In this example,

  1. We create a custom function named rtrim that takes a string as input and removes trailing whitespace characters.
  2. We call the rtrim function with the string "banana ".
  3. Finally, we print the trimmed string.

C Program

#include <stdio.h>
#include <string.h>
#include <ctype.h>

void rtrim(char *str) {
    int i = strlen(str) - 1;
    while (isspace(str[i]))
        i--;
    str[i + 1] = '\0';
}

int main() {
    char str[] = "banana   ";
    rtrim(str);
    printf("Trimmed string is: '%s'\n", str);
    return 0;
}

Output

Trimmed string is: 'banana'

Summary

In this tutorial, we learned How to Trim a String in C language with well detailed examples.




More C Strings Tutorials

  1. How to Create an Empty String in C ?
  2. How to get Length of String in C ?
  3. How to get Character at Specific Index in String in C ?
  4. How to get First Character in String in C ?
  5. How to get Last Character in String in C ?
  6. How to get First N Characters in String in C ?
  7. How to get Last N Characters in String in C ?
  8. How to get Substring after Specific Character in C ?
  9. How to get Substring before Specific Character in C ?
  10. How to get Substring between two Specific Characters in C ?
  11. How to get Substring from Specific Index to End in C ?
  12. How to Iterate over Characters in String in C ?
  13. How to Iterate over Words in String in C ?
  14. How to Check if String is Empty in C ?
  15. How to Check if String contains only Alphabets in C ?
  16. How to Check if String contains only Alphabets and Numbers in C ?
  17. How to Check if String contains only Numeric Digits in C ?
  18. How to Check if a String contains given Substring in C ?
  19. How to Check if String contains specific Character in C ?
  20. How to Check if String starts with Specific Prefix in C ?
  21. How to Check if String ends with Specific Suffix in C ?
  22. How to Append a String to another String in C ?
  23. How to Append a Character to beginning of a String in C ?
  24. How to Append a Character to end of a String in C ?
  25. How to Concatenate Two Strings in C ?
  26. How to Repeat a String N Times in C ?
  27. How to Insert Character at Specific Index in String in C ?
  28. How to Replace a Substring in String in C ?
  29. How to Replace Character at Specific Index in String in C ?
  30. How to Replace All Occurrences of a Substring in a String in C ?
  31. How to Replace a Substring in a String using Regular Expression in C ?
  32. How to Split a String in C ?
  33. How to Split a String by New Line in C ?
  34. How to Split a String by Comma in C ?
  35. How to Sort Characters in String in C ?
  36. How to convert String to Lowercase in C ?
  37. How to convert String to Uppercase in C ?
  38. How to Trim a String in C ?
  39. How to convert First Character in String to Uppercase in C ?
  40. How to Reverse a String in C ?
  41. How to Remove Character at specific Index in a String in C ?
  42. How to Remove First Character in a String in C ?
  43. How to Remove Last Character in a String in C ?
  44. How to Remove first N Characters in a String in C ?
  45. How to Remove last N Characters in a String in C ?
  46. How to Remove specific Substring in C ?
  47. How to Remove specific Character from a String in C ?
  48. How to Remove All Whitespace Characters from a String in C ?
  49. How to Remove Special Characters from a String in C ?
  50. How to keep only Alphabets in a String in C ?
  51. How to Convert Integer to String in C ?
  52. How to Convert String to Integer in C ?
  53. How to convert String to Float in C ?
  54. How to convert Float to String in C ?
  55. How to check if Two Strings are Equal in C ?
  56. How to check if Two Strings are Equal ignoring case in C ?
  57. How to Compare Two Strings in C ?
  58. How to find the Characters in the First String that are not Present in the Second String in C ?
  59. How to find the Index of Substring in C ?
  60. How to find the Index of Last Occurrence of Substring in C ?
  61. How to find the Indices of All Occurrences of Substring in C ?
  62. How to get all the possible Substrings of a String in C ?
  63. How to get all the possible K length Substrings in a String in C ?