From c9190af38fd6fd9e71ca7db2b343e3a79f24ff5c Mon Sep 17 00:00:00 2001
From: 13693261870 <252740454@qq.com>
Date: 星期三, 23 十一月 2022 16:23:44 +0800
Subject: [PATCH] 1

---
 src/main/java/com/lf/server/helper/StringHelper.java |  124 +++++++++++++++++++++++------------------
 1 files changed, 69 insertions(+), 55 deletions(-)

diff --git a/src/main/java/com/lf/server/helper/StringHelper.java b/src/main/java/com/lf/server/helper/StringHelper.java
index e66dedb..184cbfc 100644
--- a/src/main/java/com/lf/server/helper/StringHelper.java
+++ b/src/main/java/com/lf/server/helper/StringHelper.java
@@ -2,7 +2,6 @@
 
 import com.lf.server.entity.all.StaticData;
 
-import java.text.DecimalFormat;
 import java.text.SimpleDateFormat;
 import java.util.Date;
 import java.util.regex.Matcher;
@@ -16,7 +15,7 @@
     /**
      * 鏁板瓧姝e垯
      */
-    public static final Pattern NUMBER_PATTERN = Pattern.compile("^[-\\+]?[\\d]*[.]?[\\d]*$");
+    public static final Pattern NUMBER_PATTERN = Pattern.compile("-?\\d+(\\.\\d+)?");
 
     /**
      * 鏍煎紡鍖栧綋鍓嶇郴缁熸棩鏈� 1
@@ -28,16 +27,35 @@
      */
     public static final SimpleDateFormat YMDHMS_FORMAT = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
 
-    public static final double D1024 = 1024.0;
+    /**
+     * 鏍煎紡鍖栧綋鍓嶇郴缁熸棩鏈� 3
+     */
+    public static final SimpleDateFormat YMD2_FORMAT = new SimpleDateFormat("yyyyMMdd");
 
     /**
-     * 鍒ゆ柇瀛楃涓�,鏄惁涓烘暟瀛�
-     *
-     * @param str
-     * @return
+     * 鏍煎紡鍖栧綋鍓嶇郴缁熸棩鏈� 4
      */
-    public static boolean isNumber(String str) {
-        return NUMBER_PATTERN.matcher(str).matches();
+    public static final SimpleDateFormat YMDHMS2_FORMAT = new SimpleDateFormat("yyyyMMddHHmmss");
+
+    /**
+     * 鍒ゆ柇瀛楃涓�,鏄惁涓烘暣鏁�
+     */
+    public static boolean isInteger(String str) {
+        return str != null && str.matches("[0-9]+");
+    }
+
+    /**
+     * 鍒ゆ柇瀛楃涓�,鏄惁涓烘诞鐐规暟
+     */
+    public static boolean isNumeric(String str) {
+        return str != null && str.matches("-?\\d+(\\.\\d+)?");
+    }
+
+    /**
+     * 鍒ゆ柇瀛楃涓�,鏄惁涓烘诞鐐规暟
+     */
+    public static boolean isNumeric2(String str) {
+        return str != null && NUMBER_PATTERN.matcher(str).matches();
     }
 
     /**
@@ -46,10 +64,12 @@
     public static Pattern datePattern = Pattern.compile("^((\\d{2}(([02468][048])|([13579][26]))[\\-\\/]((((0?[13578])|(1[02]))[\\-\\/]((0?[1-9])|([1-2][0-9])|(3[01])))|(((0?[469])|(11))[\\-\\/]((0?[1-9])|([1-2][0-9])|(30)))|(0?2[\\-\\/]((0?[1-9])|([1-2][0-9])))))|(\\d{2}(([02468][1235679])|([13579][01345789]))[\\-\\/]((((0?[13578])|(1[02]))[\\-\\/]((0?[1-9])|([1-2][0-9])|(3[01])))|(((0?[469])|(11))[\\-\\/]((0?[1-9])|([1-2][0-9])|(30)))|(0?2[\\-\\/]((0?[1-9])|(1[0-9])|(2[0-8]))))))(\\s(((0?[0-9])|([1-2][0-3]))\\:([0-5]?[0-9])((\\s)|(\\:([0-5]?[0-9])))))?$");
 
     /**
+     * SQL姝e垯
+     */
+    public static Pattern sqlPattern = Pattern.compile("|and|exec|execute|insert|select|delete|update|count|drop|\\*|%|chr|mid|master|truncate|char|declare|sitename|net user|xp_cmdshell|;|or|-|\\+|,|like");
+
+    /**
      * 瀛楃涓茶浆涓烘棩鏈�
-     *
-     * @param str
-     * @return
      */
     public static Date parseDate(String str) {
         try {
@@ -61,9 +81,6 @@
 
     /**
      * 瀛楃涓茶浆涓烘棩鏈熸椂闂�
-     *
-     * @param str
-     * @return
      */
     public static Date parseTime(String str) {
         try {
@@ -75,9 +92,6 @@
 
     /**
      * 鍒ゆ柇鍊兼槸鍚︿负鏃ユ湡鏍煎紡
-     *
-     * @param strDate
-     * @return
      */
     public static boolean isDate(String strDate) {
         Matcher m = datePattern.matcher(strDate);
@@ -86,10 +100,7 @@
     }
 
     /**
-     * 瀛楃涓诧紝鏄惁涓簄ull鎴�""
-     *
-     * @param str
-     * @return
+     * 瀛楃涓诧紝鏄惁涓簄ull 鎴� ""
      */
     public static boolean isNull(String str) {
         return null == str || str.length() == 0;
@@ -97,22 +108,49 @@
 
     /**
      * 瀛楃涓�,鏄惁涓虹┖null鍜岀┖鏍�
-     *
-     * @param str
-     * @return
      */
     public static boolean isEmpty(String str) {
         return str == null || "".equals(str.trim());
     }
 
     /**
-     * 棣栧瓧姣嶅ぇ鍐�
-     *
-     * @param str
-     * @return
+     * 鑾峰彇 like 瀛楃涓�
      */
-    public static String capitalize(String str) {
-        return String.valueOf(str.charAt(0)).toUpperCase() + str.substring(1);
+    public static String getLikeStr(String str) {
+        return StringHelper.isEmpty(str) ? null : "%" + str.trim() + "%";
+    }
+
+    /**
+     * 鑾峰彇 like 瀛楃涓�-2
+     */
+    public static String getLikeStr2(String str) {
+        return StringHelper.isEmpty(str) ? "%" : "%" + str.trim() + "%";
+    }
+
+    /**
+     * 棣栧瓧姣嶅ぇ鍐�
+     */
+    public static String firstCharToUpperCase(String str) {
+        return str.substring(0, 1).toUpperCase() + str.substring(1);
+    }
+
+    /**
+     * 棣栧瓧姣嶅皬鍐�
+     */
+    public static String firstCharToLowerCase(String str) {
+        return str.substring(0, 1).toLowerCase() + str.substring(1);
+    }
+
+    /**
+     * 鍒ゆ柇鍊兼槸鍚﹀瓨鍦⊿QL娉ㄥ叆
+     *
+     * @param str 瀛楃涓�
+     * @return 鏄�/鍚�
+     */
+    public static boolean isSqlInjection(String str) {
+        Matcher m = sqlPattern.matcher(str);
+
+        return m.matches();
     }
 
     /**
@@ -123,29 +161,5 @@
      */
     public static boolean checkPwdValid(String pwd) {
         return Pattern.matches(StaticData.PWD_REG, pwd);
-    }
-
-    /**
-     * 瀛楄妭鍗曚綅鎹㈢畻
-     *
-     * @param byteNumber
-     * @return
-     */
-    public static String formatByte(long byteNumber) {
-        double kbNumber = byteNumber / D1024;
-        if (kbNumber < D1024) {
-            return new DecimalFormat("#.##KB").format(kbNumber);
-        }
-        double mbNumber = kbNumber / D1024;
-        if (mbNumber < D1024) {
-            return new DecimalFormat("#.##MB").format(mbNumber);
-        }
-        double gbNumber = mbNumber / D1024;
-        if (gbNumber < D1024) {
-            return new DecimalFormat("#.##GB").format(gbNumber);
-        }
-        double tbNumber = gbNumber / D1024;
-
-        return new DecimalFormat("#.##TB").format(tbNumber);
     }
 }

--
Gitblit v1.9.3