From 97c74c4cabbf10a70ae7f772ffeda08cdecd7ae0 Mon Sep 17 00:00:00 2001
From: 13693261870 <252740454@qq.com>
Date: 星期三, 02 十一月 2022 19:58:18 +0800
Subject: [PATCH] 1

---
 src/main/java/com/lf/server/helper/StringHelper.java |   83 ++++++++++++++++++++++++++---------------
 1 files changed, 52 insertions(+), 31 deletions(-)

diff --git a/src/main/java/com/lf/server/helper/StringHelper.java b/src/main/java/com/lf/server/helper/StringHelper.java
index 6c538be..b38ee98 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
@@ -38,19 +37,36 @@
      */
     public static final SimpleDateFormat YMD_HM_FORMAT = new SimpleDateFormat("yyyyMMdd_HHmm");
 
-    public static final double D1024 = 1024.0;
+    /**
+     * 鍒ゆ柇瀛楃涓�,鏄惁涓烘暣鏁�
+     */
+    public static boolean isInteger(String str) {
+        return str != null && str.matches("[0-9]+");
+    }
 
     /**
-     * 鍒ゆ柇瀛楃涓�,鏄惁涓烘暟瀛�
+     * 鍒ゆ柇瀛楃涓�,鏄惁涓烘诞鐐规暟
      */
-    public static boolean isNumber(String str) {
-        return NUMBER_PATTERN.matcher(str).matches();
+    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();
     }
 
     /**
      * 鏃ユ湡姝e垯
      */
     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");
 
     /**
      * 瀛楃涓茶浆涓烘棩鏈�
@@ -100,15 +116,41 @@
     /**
      * 鑾峰彇 like 瀛楃涓�
      */
-    public static String getLikeStr(String name) {
-        return StringHelper.isEmpty(name) ? null : "%" + name.trim() + "%";
+    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 capitalize(String str) {
-        return String.valueOf(str.charAt(0)).toUpperCase() + str.substring(1);
+    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();
     }
 
     /**
@@ -119,26 +161,5 @@
      */
     public static boolean checkPwdValid(String pwd) {
         return Pattern.matches(StaticData.PWD_REG, pwd);
-    }
-
-    /**
-     * 瀛楄妭鍗曚綅鎹㈢畻
-     */
-    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