Skip to content

Commit a3de5e3

Browse files
committed
零代码断言:优化自动断言是否按搜索关键词返回字符串
1 parent 4374c89 commit a3de5e3

2 files changed

Lines changed: 11 additions & 8 deletions

File tree

‎APIJSON-Java-Server/APIJSONBoot-MultiDataSource/src/main/resources/static/api/apijson/JSONResponse.js‎

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1717,9 +1717,9 @@ var JSONResponse = {
17171717
target.sort = sort = sort == null || srt === sort ? srt : (sort.includes(srt) ? sort : (srt === '=' ? sort + '=' : ''));
17181718
}
17191719

1720-
if (isStr && same !== '' && StringUtil.isNotEmpty(first) && StringUtil.isNotEmpty(last)) {
1721-
var sm = StringUtil.longestSubstr(first, last);
1722-
target.same = same = StringUtil.longestSubstr(same, sm);
1720+
if (isStr && same !== '' && (StringUtil.isNotEmpty(first) || StringUtil.isNotEmpty(last))) {
1721+
var sm = StringUtil.isEmpty(first) ? last : (StringUtil.isEmpty(last) ? first : StringUtil.longestSubstr(first, last));
1722+
target.same = same = same == null ? sm : (StringUtil.isEmpty(sm) ? same : StringUtil.longestSubstr(same, sm));
17231723
}
17241724
}
17251725
}
@@ -1793,7 +1793,7 @@ var JSONResponse = {
17931793
}
17941794

17951795
if (isStr && same !== '' && StringUtil.isNotEmpty(real)) {
1796-
var sm = StringUtil.isEmpty(same) ? real : StringUtil.longestSubstr(real, same); // preReal);
1796+
var sm = same == null ? real : StringUtil.longestSubstr(real, same); // preReal);
17971797
target.same = same = sm; // StringUtil.longestSubstr(same, sm);
17981798
}
17991799
}

‎APIJSON-Java-Server/APIJSONBoot-MultiDataSource/src/main/resources/static/api/apijson/StringUtil.js‎

Lines changed: 7 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -881,12 +881,15 @@ var StringUtil = {
881881
},
882882

883883
longestSubstr: function(str1, str2, trim) {
884-
if (! str1 || ! str2) {
885-
return "";
884+
let m = StringUtil.isString(str1) ? StringUtil.length(str1, trim) : 0;
885+
let n = m <= 0 || ! StringUtil.isString(str2) ? 0 : StringUtil.length(str2, trim);
886+
if (n <= 0) {
887+
return '';
886888
}
887889

888-
let m = StringUtil.length(str1, trim);
889-
let n = StringUtil.length(str2, trim);
890+
if (str1 === str2) {
891+
return StringUtil.get(str1);
892+
}
890893

891894
// 创建一个二维数组,dp[i][j] 记录以 str1[i-1] 和 str2[j-1] 结尾的公共子串长度
892895
let dp = Array.from(Array(m + 1), () => Array(n + 1).fill(0));

0 commit comments

Comments
 (0)