tgrekov-libft
HIVE libft Oct 2023
Loading...
Searching...
No Matches
ft_strtrim.c
Go to the documentation of this file.
1/* ************************************************************************** */
2/* */
3/* ::: :::::::: */
4/* ft_strtrim.c :+: :+: :+: */
5/* +:+ +:+ +:+ */
6/* By: tgrekov <tgrekov@student.hive.fi> +#+ +:+ +#+ */
7/* +#+#+#+#+#+ +#+ */
8/* Created: 2023/10/26 15:00:51 by tgrekov #+# #+# */
9/* Updated: 2023/11/09 20:54:21 by tgrekov ### ########.fr */
10/* */
11/* ************************************************************************** */
12
20#include "libft.h"
21
31char *ft_strtrim(char const *s1, char const *set)
32{
33 size_t start;
34 size_t end;
35 char *s2;
36
37 if (!s1 || !set)
38 return (0);
39 start = 0;
40 end = ft_strlen(s1);
41 while (start < end && ft_strchr(set, s1[start]))
42 start++;
43 while (end > start && ft_strchr(set, s1[end]))
44 end--;
45 s2 = malloc(end - start + 2);
46 if (!s2)
47 return (0);
48 ft_strlcpy(s2, s1 + start, end - start + 2);
49 return (s2);
50}
char * ft_strchr(const char *s, int c)
Finds first occurence of character c in string s.
Definition ft_strchr.c:30
size_t ft_strlcpy(char *dst, const char *src, size_t dstsize)
Copy at most dstsize - 1 characters from string src into dst.
Definition ft_strlcpy.c:36
size_t ft_strlen(const char *str)
Get length of str.
Definition ft_strlen.c:28
char * ft_strtrim(char const *s1, char const *set)
Allocates and returns a copy of s1 with any successive characters found in string set removed from th...
Definition ft_strtrim.c:31