libft/src/string/ft_strtrim.c

35 lines
1.3 KiB
C

/* ************************************************************************** */
/* */
/* ::: o_ :::::: ::: */
/* ft_strtrim.c :+: / :+::+: :+: */
/* +:+ > +:++:+ +:+ */
/* By: whaffman <whaffman@student.codam.nl> +#+ +:+ +#++#++:++#++ */
/* +#+ +#+#+ +#++#+ +#+ \o/ */
/* Created: 2024/10/10 17:00:32 by whaffman #+#+# #+#+# #+# #+# | */
/* Updated: 2024/10/10 17:00:32 by whaffman ### ### ### ### / \ */
/* */
/* ************************************************************************** */
#include "libft.h"
char *ft_strtrim(char const *s1, char const *set)
{
char *front;
char *back;
if (!s1)
return (NULL);
if (!ft_strlen(set))
return (ft_strdup(s1));
front = (char *) s1;
back = (char *) s1;
while (*back)
back++;
back--;
while (ft_strchr(set, *front))
front++;
while (ft_strchr(set, *back))
back--;
return (ft_substr(s1, front - s1, back - front + 1));
}