From 1223edea2f56e5c3c0e36ea844c12ef55908e3c2 Mon Sep 17 00:00:00 2001 From: chenrui <1187576398@qq.com> Date: 星期五, 09 五月 2025 17:33:34 +0800 Subject: [PATCH] 回款登记功能开发 --- src/main/java/com/ruoyi/common/utils/StringUtils.java | 84 ++++++++++++++++++++++++++++++++++++++++++ 1 files changed, 84 insertions(+), 0 deletions(-) diff --git a/src/main/java/com/ruoyi/common/utils/StringUtils.java b/src/main/java/com/ruoyi/common/utils/StringUtils.java index 215d115..74eb532 100644 --- a/src/main/java/com/ruoyi/common/utils/StringUtils.java +++ b/src/main/java/com/ruoyi/common/utils/StringUtils.java @@ -23,6 +23,9 @@ /** 涓嬪垝绾� */ private static final char SEPARATOR = '_'; + /** 鏄熷彿 */ + private static final char ASTERISK = '*'; + /** * 鑾峰彇鍙傛暟涓嶄负绌哄�� * @@ -164,6 +167,49 @@ } /** + * 鏇挎崲鎸囧畾瀛楃涓茬殑鎸囧畾鍖洪棿鍐呭瓧绗︿负"*" + * + * @param str 瀛楃涓� + * @param startInclude 寮�濮嬩綅缃紙鍖呭惈锛� + * @param endExclude 缁撴潫浣嶇疆锛堜笉鍖呭惈锛� + * @return 鏇挎崲鍚庣殑瀛楃涓� + */ + public static String hide(CharSequence str, int startInclude, int endExclude) + { + if (isEmpty(str)) + { + return NULLSTR; + } + final int strLength = str.length(); + if (startInclude > strLength) + { + return NULLSTR; + } + if (endExclude > strLength) + { + endExclude = strLength; + } + if (startInclude > endExclude) + { + // 濡傛灉璧峰浣嶇疆澶т簬缁撴潫浣嶇疆锛屼笉鏇挎崲 + return NULLSTR; + } + final char[] chars = new char[strLength]; + for (int i = 0; i < strLength; i++) + { + if (i >= startInclude && i < endExclude) + { + chars[i] = ASTERISK; + } + else + { + chars[i] = str.charAt(i); + } + } + return new String(chars); + } + + /** * 鎴彇瀛楃涓� * * @param str 瀛楃涓� @@ -241,6 +287,32 @@ } /** + * 鍦ㄥ瓧绗︿覆涓煡鎵剧涓�涓嚭鐜扮殑 `open` 鍜屾渶鍚庝竴涓嚭鐜扮殑 `close` 涔嬮棿鐨勫瓙瀛楃涓� + * + * @param str 瑕佹埅鍙栫殑瀛楃涓� + * @param open 璧峰瀛楃涓� + * @param close 缁撴潫瀛楃涓� + * @return 鎴彇缁撴灉 + */ + public static String substringBetweenLast(final String str, final String open, final String close) + { + if (isEmpty(str) || isEmpty(open) || isEmpty(close)) + { + return NULLSTR; + } + final int start = str.indexOf(open); + if (start != INDEX_NOT_FOUND) + { + final int end = str.lastIndexOf(close); + if (end != INDEX_NOT_FOUND) + { + return str.substring(start + open.length(), end); + } + } + return NULLSTR; + } + + /** * 鍒ゆ柇鏄惁涓虹┖锛屽苟涓斾笉鏄┖鐧藉瓧绗� * * @param str 瑕佸垽鏂殑value @@ -314,6 +386,18 @@ * * @param str 瀛楃涓� * @param sep 鍒嗛殧绗� + * @return list闆嗗悎 + */ + public static final List<String> str2List(String str, String sep) + { + return str2List(str, sep, true, false); + } + + /** + * 瀛楃涓茶浆list + * + * @param str 瀛楃涓� + * @param sep 鍒嗛殧绗� * @param filterBlank 杩囨护绾┖鐧� * @param trim 鍘绘帀棣栧熬绌虹櫧 * @return list闆嗗悎 -- Gitblit v1.9.3