diff --git a/AK/String.cpp b/AK/String.cpp index ae7328cca02..9784ae2c0e6 100644 --- a/AK/String.cpp +++ b/AK/String.cpp @@ -484,6 +484,11 @@ ErrorOr String::trim(StringView code_points_to_trim, TrimMode mode) cons return trim(Utf8View { code_points_to_trim }, mode); } +ErrorOr String::trim_ascii_whitespace(TrimMode mode) const +{ + return trim(" \n\t\v\f\r"sv, mode); +} + bool String::contains(StringView needle, CaseSensitivity case_sensitivity) const { return StringUtils::contains(bytes_as_string_view(), needle, case_sensitivity); diff --git a/AK/String.h b/AK/String.h index 191c26fcf70..faab55917ff 100644 --- a/AK/String.h +++ b/AK/String.h @@ -150,6 +150,7 @@ public: ErrorOr trim(Utf8View const& code_points_to_trim, TrimMode mode = TrimMode::Both) const; ErrorOr trim(StringView code_points_to_trim, TrimMode mode = TrimMode::Both) const; + ErrorOr trim_ascii_whitespace(TrimMode mode = TrimMode::Both) const; ErrorOr> split_limit(u32 separator, size_t limit, SplitBehavior = SplitBehavior::Nothing) const; ErrorOr> split(u32 separator, SplitBehavior = SplitBehavior::Nothing) const;