From 9ea1aaafdd387f0bd965038a3d4f51ffc20f6c9d Mon Sep 17 00:00:00 2001 From: "LIONCITYS\\lioncity" <18026623439@163.com> Date: Tue, 20 Oct 2020 10:37:07 +0800 Subject: [PATCH] =?UTF-8?q?=E8=BD=AC=E6=8D=A2=E4=BA=A7=E5=93=81=E6=8F=8F?= =?UTF-8?q?=E8=BF=B0,=E8=AE=A9=E8=AF=A6=E6=83=85=E5=9B=BE=E9=80=82?= =?UTF-8?q?=E5=BA=94=E5=B1=8F=E5=B9=95,=E4=BF=AE=E5=A4=8D=E5=9B=BE?= =?UTF-8?q?=E7=89=87=E6=98=BE=E7=A4=BA=E4=B8=8D=E5=85=A8?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../main/java/co/yixiang/utils/RegexUtil.java | 86 +++++++++++++++++++ .../impl/YxStoreProductServiceImpl.java | 3 +- 2 files changed, 88 insertions(+), 1 deletion(-) create mode 100644 yshop-common/src/main/java/co/yixiang/utils/RegexUtil.java diff --git a/yshop-common/src/main/java/co/yixiang/utils/RegexUtil.java b/yshop-common/src/main/java/co/yixiang/utils/RegexUtil.java new file mode 100644 index 00000000..1b7fee3a --- /dev/null +++ b/yshop-common/src/main/java/co/yixiang/utils/RegexUtil.java @@ -0,0 +1,86 @@ +package co.yixiang.utils; + + +import java.util.ArrayList; +import java.util.Arrays; +import java.util.List; +import java.util.regex.Matcher; +import java.util.regex.Pattern; + +/** + * @author :LionCity + * @date :Created in 2020-10-19 14:44 + * @description:正则表达式匹配两个字符串之间的内容 + * @modified By: + * @version: + */ +public class RegexUtil { + + + /** + * 转换产品描述 + * + * @param str str + * @return {@link String} + */ + public static String converProductDescription(String str){ + StringBuilder sb = new StringBuilder(); + List imgArr=Arrays.asList(str.split("p>0){ + if(img.indexOf("style=")>0){ + String rgex = "style=\"(.*?)\""; + String rgexStr = getSubUtilSimple(img, rgex); + if(rgexStr.indexOf("max-width: 100%;")<0){ + img=img.replace( rgexStr ,rgexStr+"max-width: 100%"); + } + }else{ + img=" style=\"max-width: 100%;\""+img; + } + } + sb.append(img); + } + return sb.toString(); + } + + + /** + * 正则表达式匹配两个指定字符串中间的内容 + * + * @param soap + * @return + */ + public static List getSubUtil(String soap, String rgex) { + List list = new ArrayList(); + // 匹配的模式 + Pattern pattern = Pattern.compile(rgex); + Matcher m = pattern.matcher(soap); + while (m.find()) { + int i = 1; + list.add(m.group(i)); + i++; + } + return list; + } + + /** + * 返回单个字符串,若匹配到多个的话就返回第一个,方法与getSubUtil一样 + * + * @param soap + * @param rgex + * @return + */ + public static String getSubUtilSimple(String soap, String rgex) { + // 匹配的模式 + Pattern pattern = Pattern.compile(rgex); + Matcher m = pattern.matcher(soap); + while (m.find()) { + return m.group(1); + } + return ""; + } +} \ No newline at end of file diff --git a/yshop-mall/src/main/java/co/yixiang/modules/product/service/impl/YxStoreProductServiceImpl.java b/yshop-mall/src/main/java/co/yixiang/modules/product/service/impl/YxStoreProductServiceImpl.java index d19a95dc..fc6b8394 100644 --- a/yshop-mall/src/main/java/co/yixiang/modules/product/service/impl/YxStoreProductServiceImpl.java +++ b/yshop-mall/src/main/java/co/yixiang/modules/product/service/impl/YxStoreProductServiceImpl.java @@ -54,6 +54,7 @@ import co.yixiang.modules.template.service.YxShippingTemplatesService; import co.yixiang.modules.user.service.YxUserService; import co.yixiang.utils.FileUtil; import co.yixiang.utils.RedisUtil; +import co.yixiang.utils.RegexUtil; import co.yixiang.utils.ShopKeyUtils; import com.alibaba.fastjson.JSON; import com.alibaba.fastjson.JSONObject; @@ -527,7 +528,7 @@ public class YxStoreProductServiceImpl extends BaseServiceImpl