From 32701ab7bdc776712b79b59c552b4d87cd69207b Mon Sep 17 00:00:00 2001 From: ruibaby Date: Mon, 23 Dec 2019 16:50:24 +0800 Subject: [PATCH] feat: remove spaces and newlines in post summary. --- .../run/halo/app/service/impl/BasePostServiceImpl.java | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/src/main/java/run/halo/app/service/impl/BasePostServiceImpl.java b/src/main/java/run/halo/app/service/impl/BasePostServiceImpl.java index 3cd3afd37..43436dbaa 100644 --- a/src/main/java/run/halo/app/service/impl/BasePostServiceImpl.java +++ b/src/main/java/run/halo/app/service/impl/BasePostServiceImpl.java @@ -33,6 +33,8 @@ import java.util.Collections; import java.util.Date; import java.util.List; import java.util.Optional; +import java.util.regex.Matcher; +import java.util.regex.Pattern; import java.util.stream.Collectors; import static org.springframework.data.domain.Sort.Direction.ASC; @@ -52,6 +54,8 @@ public abstract class BasePostServiceImpl extends Abstrac private final OptionService optionService; + private final Pattern SUMMARY_PATTERN = Pattern.compile("\\s*|\t|\r|\n"); + public BasePostServiceImpl(BasePostRepository basePostRepository, OptionService optionService) { super(basePostRepository); @@ -437,6 +441,9 @@ public abstract class BasePostServiceImpl extends Abstrac String text = HaloUtils.cleanHtmlTag(htmlContent); + Matcher matcher = SUMMARY_PATTERN.matcher(text); + text = matcher.replaceAll(""); + // Get summary length Integer summaryLength = optionService.getByPropertyOrDefault(PostProperties.SUMMARY_LENGTH, Integer.class, 150);