|
@@ -33,71 +33,195 @@ public class PublicStatic {
|
|
|
int[] input = new int[]{0x7f, 0x80, 0x81, 0x82, 0x83, 0x84, 0x85, 0x86, 0x87, 0x88, 0x89, 0x8a, 0x8b, 0x8c, 0x8d, 0x8e, 0x8f, 0x90, 0x91, 0x92, 0x93, 0x94, 0x95, 0x96, 0x97, 0x98, 0x99, 0x9a, 0x9b, 0x9c, 0x9d, 0x9e, 0x9f, 0xad, 0x483, 0x484, 0x485, 0x486, 0x487, 0x488, 0x489, 0x559, 0x55a, 0x58a, 0x591, 0x592, 0x593, 0x594, 0x595, 0x596, 0x597, 0x598, 0x599, 0x59a, 0x59b, 0x59c, 0x59d, 0x59e, 0x59f, 0x5a0, 0x5a1, 0x5a2, 0x5a3, 0x5a4, 0x5a5, 0x5a6, 0x5a7, 0x5a8, 0x5a9, 0x5aa, 0x5ab,
|
|
|
0x5ac, 0x5ad, 0x5ae, 0x5af, 0x5b0, 0x5b1, 0x5b2, 0x5b3, 0x5b4, 0x5b5, 0x5b6, 0x5b7, 0x5b8, 0x5b9, 0x5ba, 0x5bb, 0x5bc, 0x5bd, 0x5bf, 0x5c1, 0x5c2, 0x5c4, 0x5c5, 0x5c6, 0x5c7, 0x606, 0x607, 0x608, 0x609, 0x60a, 0x63b, 0x63c, 0x63d, 0x63e, 0x63f, 0x674, 0x6e5, 0x6e6, 0x70f, 0x76e, 0x76f, 0x770, 0x771, 0x772, 0x773, 0x774, 0x775, 0x776, 0x777, 0x778, 0x779, 0x77a, 0x77b, 0x77c, 0x77d, 0x77e, 0x77f, 0xa51, 0xa75, 0xb44, 0xb62, 0xb63, 0xc62, 0xc63, 0xce2, 0xce3, 0xd62, 0xd63,
|
|
|
0x135f, 0x200b, 0x200c, 0x200d, 0x200e, 0x200f, 0x2028, 0x2029, 0x202a, 0x202b, 0x202c, 0x202d, 0x202e, 0x2044, 0x2071, 0xf701, 0xf702, 0xf703, 0xf704, 0xf705, 0xf706, 0xf707, 0xf708, 0xf709, 0xf70a, 0xf70b, 0xf70c, 0xf70d, 0xf70e, 0xf710, 0xf711, 0xf712, 0xf713, 0xf714, 0xf715, 0xf716, 0xf717, 0xf718, 0xf719, 0xf71a, 0xfb1e, 0xfc5e, 0xfc5f, 0xfc60, 0xfc61, 0xfc62, 0xfeff, 0xfffc};
|
|
|
- StringBuilder b = new StringBuilder(); int lastContinuous = -1; int span = 0; for (int i = 0; i < input.length; i++) {
|
|
|
+ StringBuilder b = new StringBuilder();
|
|
|
+ int lastContinuous = -1;
|
|
|
+ int span = 0;
|
|
|
+ for (int i = 0; i < input.length; i++) {
|
|
|
if (lastContinuous == -1 && i < input.length - 1 && input[i] + 1 == input[i + 1]) {
|
|
|
- lastContinuous = input[i]; span = 1;
|
|
|
+ lastContinuous = input[i];
|
|
|
+ span = 1;
|
|
|
} else {
|
|
|
if (input[i] == lastContinuous + span) {
|
|
|
span++;
|
|
|
} else if (lastContinuous != -1) {
|
|
|
if (b.length() > 0) {
|
|
|
b.append("|");
|
|
|
- } b.append(String.format("[\\u%s-\\u%s]", zerolize(Integer.toHexString(lastContinuous)), zerolize(Integer.toHexString(lastContinuous + span - 1)))); span = 0; lastContinuous = -1; i--;
|
|
|
+ }
|
|
|
+ b.append(String.format("[\\u%s-\\u%s]", zerolize(Integer.toHexString(lastContinuous)), zerolize(Integer.toHexString(lastContinuous + span - 1))));
|
|
|
+ span = 0;
|
|
|
+ lastContinuous = -1;
|
|
|
+ i--;
|
|
|
} else {
|
|
|
b.append("|\\u" + zerolize(Integer.toHexString(input[i])));
|
|
|
}
|
|
|
}
|
|
|
- } if (lastContinuous != -1) {
|
|
|
+ }
|
|
|
+ if (lastContinuous != -1) {
|
|
|
if (b.length() > 0) {
|
|
|
b.append("|");
|
|
|
- } b.append(String.format("[\\u%s-\\u%s]", zerolize(Integer.toHexString(lastContinuous)), zerolize(Integer.toHexString(lastContinuous + span - 1))));
|
|
|
- } return b.toString();
|
|
|
+ }
|
|
|
+ b.append(String.format("[\\u%s-\\u%s]", zerolize(Integer.toHexString(lastContinuous)), zerolize(Integer.toHexString(lastContinuous + span - 1))));
|
|
|
+ }
|
|
|
+ return b.toString();
|
|
|
}
|
|
|
|
|
|
public static String patternCompile = matcherString();
|
|
|
// 反洗钱
|
|
|
public static Map<String, String> AML = new HashMap<String, String>() {
|
|
|
{
|
|
|
- put("美元金额", "外币交易额(折合美元)"); put("人民币金额", "交易金额"); put("货币名称", "交易币种");
|
|
|
+ put("美元金额", "外币交易额(折合美元)");
|
|
|
+ put("人民币金额", "交易金额");
|
|
|
+ put("货币名称", "交易币种");
|
|
|
// put("付款方网点代码","交易网点名称");
|
|
|
- put("代办人名称", "经办人姓名"); put("代办人证件号码", "经办人证件号码"); put("用途", "资金用途");
|
|
|
+ put("代办人名称", "经办人姓名");
|
|
|
+ put("代办人证件号码", "经办人证件号码");
|
|
|
+ put("用途", "资金用途");
|
|
|
// put("交易卡号", "用途 ");
|
|
|
- put("付款方账号", "交易账号"); put("付款方名称", "交易户名"); put("付款方证件号码", "交易证件号码"); put("付款方银行", "开户网点");
|
|
|
+ put("付款方账号", "交易账号");
|
|
|
+ put("付款方名称", "交易户名");
|
|
|
+ put("付款方证件号码", "交易证件号码");
|
|
|
+ put("付款方银行", "开户网点");
|
|
|
|
|
|
- put("收款方账号", "对手账号"); put("收款方名称", "对手户名"); put("收款方证件号码", "对手身份证号"); put("收款方银行", "对手开户银行");
|
|
|
+ put("收款方账号", "对手账号");
|
|
|
+ put("收款方名称", "对手户名");
|
|
|
+ put("收款方证件号码", "对手身份证号");
|
|
|
+ put("收款方银行", "对手开户银行");
|
|
|
}
|
|
|
};
|
|
|
public static Map<Integer, String> IDLABELMAP = new HashMap<Integer, String>() {
|
|
|
{
|
|
|
- put(0, "number"); put(1, "openAccountSite"); put(2, "tradeCardNumber"); put(3, "tradeAccount"); put(4, "tradeUserName"); put(5, "tradeIdNumber"); put(6, "tradeDate"); put(7, "tradeTime"); put(8, "paymentMark"); put(9, "tradeSum"); put(10, "incomeSum"); put(11, "outPaySum"); put(12, "tradeRemainder"); put(13, "opponentAccount"); put(14, "opponentCardNumber"); put(15, "cashMark"); put(16, "opponentUserName"); put(17, "opponentIdentify"); put(18, "opponentAccountBank");
|
|
|
- put(19, "summary"); put(20, "tradeCurrency"); put(21, "tradeSiteName"); put(22, "tradePlace"); put(23, "tradeHappenPlace"); put(24, "isTradeSuccess"); put(25, "summons"); put(26, "IPAddress"); put(27, "MACAddress"); put(28, "opponentTradeSum"); put(29, "tradeSerialNumber"); put(30, "channel"); put(31, "logNumber"); put(32, "voucherType"); put(33, "voucherNumber"); put(34, "tradeCounterNumber"); put(35, "foreignCurrencyTradeSum"); put(36, "operatorName"); put(37, "operatorIdentify");
|
|
|
- put(38, "operatorRelationWithOwner"); put(39, "capitalUse"); put(40, "settlementWay"); put(41, "statement"); put(42, "opponentLabel"); put(43, "remarks"); put(44, "standbyOne"); put(45, "standbyTwo"); put(46, "standbyThree"); put(47, "standbyFour"); put(48, "standbyFive"); put(49, "searchFeedBackResultReason");
|
|
|
+ put(0, "number");
|
|
|
+ put(1, "openAccountSite");
|
|
|
+ put(2, "tradeCardNumber");
|
|
|
+ put(3, "tradeAccount");
|
|
|
+ put(4, "tradeUserName");
|
|
|
+ put(5, "tradeIdNumber");
|
|
|
+ put(6, "tradeDate");
|
|
|
+ put(7, "tradeTime");
|
|
|
+ put(8, "paymentMark");
|
|
|
+ put(9, "tradeSum");
|
|
|
+ put(10, "incomeSum");
|
|
|
+ put(11, "outPaySum");
|
|
|
+ put(12, "tradeRemainder");
|
|
|
+ put(13, "opponentAccount");
|
|
|
+ put(14, "opponentCardNumber");
|
|
|
+ put(15, "cashMark");
|
|
|
+ put(16, "opponentUserName");
|
|
|
+ put(17, "opponentIdentify");
|
|
|
+ put(18, "opponentAccountBank");
|
|
|
+ put(19, "summary");
|
|
|
+ put(20, "tradeCurrency");
|
|
|
+ put(21, "tradeSiteName");
|
|
|
+ put(22, "tradePlace");
|
|
|
+ put(23, "tradeHappenPlace");
|
|
|
+ put(24, "isTradeSuccess");
|
|
|
+ put(25, "summons");
|
|
|
+ put(26, "IPAddress");
|
|
|
+ put(27, "MACAddress");
|
|
|
+ put(28, "opponentTradeSum");
|
|
|
+ put(29, "tradeSerialNumber");
|
|
|
+ put(30, "channel");
|
|
|
+ put(31, "logNumber");
|
|
|
+ put(32, "voucherType");
|
|
|
+ put(33, "voucherNumber");
|
|
|
+ put(34, "tradeCounterNumber");
|
|
|
+ put(35, "foreignCurrencyTradeSum");
|
|
|
+ put(36, "operatorName");
|
|
|
+ put(37, "operatorIdentify");
|
|
|
+ put(38, "operatorRelationWithOwner");
|
|
|
+ put(39, "capitalUse");
|
|
|
+ put(40, "settlementWay");
|
|
|
+ put(41, "statement");
|
|
|
+ put(42, "opponentLabel");
|
|
|
+ put(43, "remarks");
|
|
|
+ put(44, "standbyOne");
|
|
|
+ put(45, "standbyTwo");
|
|
|
+ put(46, "standbyThree");
|
|
|
+ put(47, "standbyFour");
|
|
|
+ put(48, "standbyFive");
|
|
|
+ put(49, "searchFeedBackResultReason");
|
|
|
}
|
|
|
};
|
|
|
public static Map<String, Integer> LABELIDMAP = new HashMap<String, Integer>() {
|
|
|
{
|
|
|
- put("number", 0); put("openAccountSite", 1); put("tradeCardNumber", 2); put("tradeAccount", 3); put("tradeUserName", 4); put("tradeIdNumber", 5); put("tradeDate", 6); put("tradeTime", 7); put("paymentMark", 8); put("tradeSum", 9); put("incomeSum", 10); put("outPaySum", 11); put("tradeRemainder", 12); put("opponentAccount", 13); put("opponentCardNumber", 14); put("cashMark", 15); put("opponentUserName", 16); put("opponentIdentify", 17); put("opponentAccountBank", 18);
|
|
|
- put("summary", 19); put("tradeCurrency", 20); put("tradeSiteName", 21); put("tradePlace", 22); put("tradeHappenPlace", 23); put("isTradeSuccess", 24); put("summons", 25); put("IPAddress", 26); put("MACAddress", 27); put("opponentTradeSum", 28); put("tradeSerialNumber", 29); put("channel", 30); put("logNumber", 31); put("voucherType", 32); put("voucherNumber", 33); put("tradeCounterNumber", 34); put("foreignCurrencyTradeSum", 35); put("operatorName", 36); put("operatorIdentify", 37);
|
|
|
- put("operatorRelationWithOwner", 38); put("capitalUse", 39); put("settlementWay", 40); put("statement", 41); put("opponentLabel", 42); put("remarks", 43); put("standbyOne", 44); put("standbyTwo", 45); put("standbyThree", 46); put("standbyFour", 47); put("standbyFive", 48); put("searchFeedBackResultReason", 49);
|
|
|
+ put("number", 0);
|
|
|
+ put("openAccountSite", 1);
|
|
|
+ put("tradeCardNumber", 2);
|
|
|
+ put("tradeAccount", 3);
|
|
|
+ put("tradeUserName", 4);
|
|
|
+ put("tradeIdNumber", 5);
|
|
|
+ put("tradeDate", 6);
|
|
|
+ put("tradeTime", 7);
|
|
|
+ put("paymentMark", 8);
|
|
|
+ put("tradeSum", 9);
|
|
|
+ put("incomeSum", 10);
|
|
|
+ put("outPaySum", 11);
|
|
|
+ put("tradeRemainder", 12);
|
|
|
+ put("opponentAccount", 13);
|
|
|
+ put("opponentCardNumber", 14);
|
|
|
+ put("cashMark", 15);
|
|
|
+ put("opponentUserName", 16);
|
|
|
+ put("opponentIdentify", 17);
|
|
|
+ put("opponentAccountBank", 18);
|
|
|
+ put("summary", 19);
|
|
|
+ put("tradeCurrency", 20);
|
|
|
+ put("tradeSiteName", 21);
|
|
|
+ put("tradePlace", 22);
|
|
|
+ put("tradeHappenPlace", 23);
|
|
|
+ put("isTradeSuccess", 24);
|
|
|
+ put("summons", 25);
|
|
|
+ put("IPAddress", 26);
|
|
|
+ put("MACAddress", 27);
|
|
|
+ put("opponentTradeSum", 28);
|
|
|
+ put("tradeSerialNumber", 29);
|
|
|
+ put("channel", 30);
|
|
|
+ put("logNumber", 31);
|
|
|
+ put("voucherType", 32);
|
|
|
+ put("voucherNumber", 33);
|
|
|
+ put("tradeCounterNumber", 34);
|
|
|
+ put("foreignCurrencyTradeSum", 35);
|
|
|
+ put("operatorName", 36);
|
|
|
+ put("operatorIdentify", 37);
|
|
|
+ put("operatorRelationWithOwner", 38);
|
|
|
+ put("capitalUse", 39);
|
|
|
+ put("settlementWay", 40);
|
|
|
+ put("statement", 41);
|
|
|
+ put("opponentLabel", 42);
|
|
|
+ put("remarks", 43);
|
|
|
+ put("standbyOne", 44);
|
|
|
+ put("standbyTwo", 45);
|
|
|
+ put("standbyThree", 46);
|
|
|
+ put("standbyFour", 47);
|
|
|
+ put("standbyFive", 48);
|
|
|
+ put("searchFeedBackResultReason", 49);
|
|
|
}
|
|
|
};
|
|
|
|
|
|
public static Map<Integer, String> jurisdiction = new HashMap<Integer, String>() {
|
|
|
{
|
|
|
- put(1, "公开"); put(2, "私密"); put(3, "共享");
|
|
|
+ put(1, "公开");
|
|
|
+ put(2, "私密");
|
|
|
+ put(3, "共享");
|
|
|
}
|
|
|
};
|
|
|
// 0表示其他 1表示第三方,2表示现金,3表示理财,4表示有收有付,5只收不付,6表示只付不收'
|
|
|
|
|
|
public static Map<Integer, String> transactionType = new HashMap<Integer, String>() {
|
|
|
{
|
|
|
- put(0, "其他"); put(1, "第三方"); put(2, "现金"); put(3, "理财"); put(4, "有收有付"); put(5, "只收不付"); put(6, "只付不收");
|
|
|
+ put(0, "其他");
|
|
|
+ put(1, "第三方");
|
|
|
+ put(2, "现金");
|
|
|
+ put(3, "理财");
|
|
|
+ put(4, "有收有付");
|
|
|
+ put(5, "只收不付");
|
|
|
+ put(6, "只付不收");
|
|
|
}
|
|
|
};
|
|
|
|
|
|
public static Map<Integer, String> status = new HashMap<Integer, String>() {
|
|
|
{
|
|
|
- put(1, "在侦"); put(2, "完结");
|
|
|
+ put(1, "在侦");
|
|
|
+ put(2, "完结");
|
|
|
}
|
|
|
};
|
|
|
|
|
@@ -108,9 +232,11 @@ public class PublicStatic {
|
|
|
* @return
|
|
|
*/
|
|
|
public static String removeAllBlank(String s) {
|
|
|
- String result = ""; if (null != s && !"".equals(s)) {
|
|
|
+ String result = "";
|
|
|
+ if (null != s && !"".equals(s)) {
|
|
|
result = s.replaceAll("[ *| *| *|//s*]*", "");
|
|
|
- } return result;
|
|
|
+ }
|
|
|
+ return result;
|
|
|
}
|
|
|
|
|
|
/**
|
|
@@ -118,18 +244,22 @@ public class PublicStatic {
|
|
|
*/
|
|
|
public static String percent(double y, double z) {
|
|
|
if (z < y) {
|
|
|
- double baiy = y; y = z; z = baiy;
|
|
|
+ double baiy = y;
|
|
|
+ y = z;
|
|
|
+ z = baiy;
|
|
|
}
|
|
|
// String baifenbi = "";// 接受百分比的值
|
|
|
// double baiy = y * 1.0;
|
|
|
// double baiz = z * 1.0;
|
|
|
if (z != 0.00) {
|
|
|
- double fen = y / z; NumberFormat nf = NumberFormat.getPercentInstance(); // 注释掉的也是一种方法
|
|
|
+ double fen = y / z;
|
|
|
+ NumberFormat nf = NumberFormat.getPercentInstance(); // 注释掉的也是一种方法
|
|
|
nf.setMinimumFractionDigits(2); // 保留到小数点后几位
|
|
|
DecimalFormat df1 = new DecimalFormat("##0.00%"); // ##.00%
|
|
|
// 百分比格式,后面不足2位的用0补齐
|
|
|
// String baifenbi = nf.format(fen);
|
|
|
- String baifenbi = df1.format(fen); return baifenbi;
|
|
|
+ String baifenbi = df1.format(fen);
|
|
|
+ return baifenbi;
|
|
|
} else {
|
|
|
return "0.00%";
|
|
|
}
|
|
@@ -139,7 +269,10 @@ public class PublicStatic {
|
|
|
* 只保留数字,字母,中文与空格以及常用可见字符
|
|
|
*/
|
|
|
public static String removeAllSpecial(String s) {
|
|
|
- s = ToDBC(s); Pattern p1 = Pattern.compile("[^\\w\\u4e00-\\u9fa5 |,.:;\\u005C\\`\\~\\!\\@\\#\\$\\%\\^\\&\\*\\(\\)\\-\\_\\+\\=\\{\\}\\[\\]\\|\\<\\>\\?\\/]"); Matcher m1 = p1.matcher(s); return m1.replaceAll("");
|
|
|
+ s = ToDBC(s);
|
|
|
+ Pattern p1 = Pattern.compile("[^\\w\\u4e00-\\u9fa5 |,.:;\\u005C\\`\\~\\!\\@\\#\\$\\%\\^\\&\\*\\(\\)\\-\\_\\+\\=\\{\\}\\[\\]\\|\\<\\>\\?\\/]");
|
|
|
+ Matcher m1 = p1.matcher(s);
|
|
|
+ return m1.replaceAll("");
|
|
|
}
|
|
|
|
|
|
/**
|
|
@@ -151,17 +284,30 @@ public class PublicStatic {
|
|
|
|
|
|
public static String specialFormat(String s) {
|
|
|
// 全角转半角
|
|
|
- String result = ""; if (null != s && !"".equals(s)) {
|
|
|
- result = s; result = result.replace("-", "-"); result = result.replace("/", "/"); result = result.replace("(", "("); result = result.replace(")", ")");
|
|
|
- } return result;
|
|
|
+ String result = "";
|
|
|
+ if (null != s && !"".equals(s)) {
|
|
|
+ result = s;
|
|
|
+ result = result.replace("-", "-");
|
|
|
+ result = result.replace("/", "/");
|
|
|
+ result = result.replace("(", "(");
|
|
|
+ result = result.replace(")", ")");
|
|
|
+ }
|
|
|
+ return result;
|
|
|
}
|
|
|
|
|
|
public static String specialFormatStr(String s) {
|
|
|
// 全角转半角
|
|
|
- String result = ""; if (StringUtils.isNotBlank(s) && !"null".equals(s)) {
|
|
|
- result = s; result = result.replace("-", "-"); result = result.replace("/", "/"); result = result.replace("(", "("); result = result.replace(")", ")"); result = result.replaceAll("(", "").replaceAll(")", "").replaceAll("个人", "").
|
|
|
+ String result = "";
|
|
|
+ if (StringUtils.isNotBlank(s) && !"null".equals(s)) {
|
|
|
+ result = s;
|
|
|
+ result = result.replace("-", "-");
|
|
|
+ result = result.replace("/", "/");
|
|
|
+ result = result.replace("(", "(");
|
|
|
+ result = result.replace(")", ")");
|
|
|
+ result = result.replaceAll("(", "").replaceAll(")", "").replaceAll("个人", "").
|
|
|
replaceAll("-", "").replaceAll("商户", "");
|
|
|
- } return result;
|
|
|
+ }
|
|
|
+ return result;
|
|
|
}
|
|
|
|
|
|
/**
|
|
@@ -171,9 +317,12 @@ public class PublicStatic {
|
|
|
* @return
|
|
|
*/
|
|
|
public static boolean isContainNumber(String company) {
|
|
|
- Pattern p = Pattern.compile("[0-9]"); Matcher m = p.matcher(company); if (m.find()) {
|
|
|
+ Pattern p = Pattern.compile("[0-9]");
|
|
|
+ Matcher m = p.matcher(company);
|
|
|
+ if (m.find()) {
|
|
|
return true;
|
|
|
- } return false;
|
|
|
+ }
|
|
|
+ return false;
|
|
|
}
|
|
|
|
|
|
/**
|
|
@@ -183,16 +332,20 @@ public class PublicStatic {
|
|
|
* @return
|
|
|
*/
|
|
|
public static boolean isContain(String company) {
|
|
|
- Pattern p = Pattern.compile("[0-9A-Za-z\\u3007\\u3400-\\u4DB5\\u4E00-\\u9FCB\\uE815-\\uE864]"); Matcher m = p.matcher(company); if (m.find()) {
|
|
|
+ Pattern p = Pattern.compile("[0-9A-Za-z\\u3007\\u3400-\\u4DB5\\u4E00-\\u9FCB\\uE815-\\uE864]");
|
|
|
+ Matcher m = p.matcher(company);
|
|
|
+ if (m.find()) {
|
|
|
return true;
|
|
|
- } return false;
|
|
|
+ }
|
|
|
+ return false;
|
|
|
// return true;
|
|
|
}
|
|
|
|
|
|
private static String zerolize(String s) {
|
|
|
if (s.length() < 4) {
|
|
|
s = "000".substring(0, 4 - s.length()) + s;
|
|
|
- } return s;
|
|
|
+ }
|
|
|
+ return s;
|
|
|
}
|
|
|
|
|
|
// 转全角的函数(SBC case)
|
|
@@ -202,13 +355,17 @@ public class PublicStatic {
|
|
|
// 其他字符半角(33-126)与全角(65281-65374)的对应关系是:均相差65248
|
|
|
|
|
|
public static String ToSBC(String input) { // 半角转全角:
|
|
|
- char[] c = input.toCharArray(); for (int i = 0; i < c.length; i++) {
|
|
|
+ char[] c = input.toCharArray();
|
|
|
+ for (int i = 0; i < c.length; i++) {
|
|
|
if (c[i] == 32) {
|
|
|
- c[i] = (char) 12288; continue;
|
|
|
- } if (c[i] < 127) {
|
|
|
+ c[i] = (char) 12288;
|
|
|
+ continue;
|
|
|
+ }
|
|
|
+ if (c[i] < 127) {
|
|
|
c[i] = (char) (c[i] + 65248);
|
|
|
}
|
|
|
- } return new String(c);
|
|
|
+ }
|
|
|
+ return new String(c);
|
|
|
}
|
|
|
|
|
|
// 转半角的函数(DBC case)
|
|
@@ -217,34 +374,73 @@ public class PublicStatic {
|
|
|
// 全角空格为12288,半角空格为32
|
|
|
// 其他字符半角(33-126)与全角(65281-65374)的对应关系是:均相差65248
|
|
|
public static String ToDBC(String input) {
|
|
|
- char[] c = input.toCharArray(); for (int i = 0; i < c.length; i++) {
|
|
|
+ char[] c = input.toCharArray();
|
|
|
+ for (int i = 0; i < c.length; i++) {
|
|
|
if (c[i] == 12288) {
|
|
|
- c[i] = (char) 32; continue;
|
|
|
- } if (c[i] > 65280 && c[i] < 65375) {
|
|
|
+ c[i] = (char) 32;
|
|
|
+ continue;
|
|
|
+ }
|
|
|
+ if (c[i] > 65280 && c[i] < 65375) {
|
|
|
c[i] = (char) (c[i] - 65248);
|
|
|
}
|
|
|
- } return new String(c);
|
|
|
+ }
|
|
|
+ return new String(c);
|
|
|
}
|
|
|
|
|
|
public static String repetitionSetNull(String str) {
|
|
|
- char[] chars = str.toCharArray(); int v0 = 0; int v1 = 0; int v2 = 0; int v3 = 0; int v4 = 0; int v5 = 0; int v6 = 0; int v7 = 0; int v8 = 0; int v9 = 0; int count = 0; for (int i = 0; i < chars.length; i++) {
|
|
|
+ char[] chars = str.toCharArray();
|
|
|
+ int v0 = 0;
|
|
|
+ int v1 = 0;
|
|
|
+ int v2 = 0;
|
|
|
+ int v3 = 0;
|
|
|
+ int v4 = 0;
|
|
|
+ int v5 = 0;
|
|
|
+ int v6 = 0;
|
|
|
+ int v7 = 0;
|
|
|
+ int v8 = 0;
|
|
|
+ int v9 = 0;
|
|
|
+ int count = 0;
|
|
|
+ for (int i = 0; i < chars.length; i++) {
|
|
|
switch (chars[i]) {
|
|
|
case '0':
|
|
|
- v0 = 1; break; case '1':
|
|
|
- v1 = 1; break; case '2':
|
|
|
- v2 = 1; break; case '3':
|
|
|
- v3 = 1; break; case '4':
|
|
|
- v4 = 1; break; case '5':
|
|
|
- v5 = 1; break; case '6':
|
|
|
- v6 = 1; break; case '7':
|
|
|
- v7 = 1; break; case '8':
|
|
|
- v8 = 1; break; case '9':
|
|
|
- v9 = 1; break; default:
|
|
|
+ v0 = 1;
|
|
|
+ break;
|
|
|
+ case '1':
|
|
|
+ v1 = 1;
|
|
|
+ break;
|
|
|
+ case '2':
|
|
|
+ v2 = 1;
|
|
|
+ break;
|
|
|
+ case '3':
|
|
|
+ v3 = 1;
|
|
|
+ break;
|
|
|
+ case '4':
|
|
|
+ v4 = 1;
|
|
|
+ break;
|
|
|
+ case '5':
|
|
|
+ v5 = 1;
|
|
|
+ break;
|
|
|
+ case '6':
|
|
|
+ v6 = 1;
|
|
|
+ break;
|
|
|
+ case '7':
|
|
|
+ v7 = 1;
|
|
|
+ break;
|
|
|
+ case '8':
|
|
|
+ v8 = 1;
|
|
|
+ break;
|
|
|
+ case '9':
|
|
|
+ v9 = 1;
|
|
|
+ break;
|
|
|
+ default:
|
|
|
count = 2;
|
|
|
- } if (count > 0) {
|
|
|
+ }
|
|
|
+ if (count > 0) {
|
|
|
break;
|
|
|
}
|
|
|
- } count = count + v0 + v1 + v2 + v3 + v4 + v5 + v6 + v7 + v8 + v9; if (count == 1) {
|
|
|
+ }
|
|
|
+ count = count + v0 + v1 + v2 + v3 + v4 + v5 + v6 + v7 + v8 + v9;
|
|
|
+ if (count == 1) {
|
|
|
return "";
|
|
|
} else {
|
|
|
return str;
|
|
@@ -254,13 +450,15 @@ public class PublicStatic {
|
|
|
public static boolean checkStr(String str) {
|
|
|
if (StringUtils.isBlank(str) || "null".equals(str)) {
|
|
|
return true;
|
|
|
- } return false;
|
|
|
+ }
|
|
|
+ return false;
|
|
|
}
|
|
|
|
|
|
public static String removeStr(String str) {
|
|
|
if (StringUtils.isBlank(str) || "null".equals(str) || "-".equals("str")) {
|
|
|
return "";
|
|
|
- } return str;
|
|
|
+ }
|
|
|
+ return str;
|
|
|
}
|
|
|
|
|
|
public static List<String> noQueryData = Lists.newArrayList("公司", "慈善", "红十字", "店", "工作室", "商行", "中心", "经营部", "水果行", "餐厅", "超市", "市场", "商贸", "西饼屋", "科技", "酒楼", "停车场", "ETC", "etc", "服务", "批发", "渔场", "浴场", "设计", "物业", "咨询", "批发", "合作社", "工厂", "鞋厂", "动物园", "植物园", "土黑猪", "猫狗", "学校", "学院", "大学", "棋牌", "娱乐", "袜厂", "制品厂", "加油站", "体育馆", "研究所", "保健院", "龙虾", "羊蝎子", "足道", "公安局", "税务局", "法院", "菜馆", "棋牌", "水产行", "海鲜行", "公司", "服饰", "服装", "基金", "宠物", "车行", "保险", "理财", "支付宝", "财付通", "apple", "烟酒", "经营者"
|
|
@@ -268,11 +466,20 @@ public class PublicStatic {
|
|
|
"美团", "饿了么", "运营", "中学", "小学", "幼儿园", "ETC", "etc", "银行", "长盛基金管理有限公司");
|
|
|
|
|
|
public static List<Criteria> getQuery() {
|
|
|
- List<Criteria> dataList = new ArrayList<>(); List<String> filedsList = Lists.newArrayList("交易对手账号", "交易对手户名"); for (String s : filedsList) {
|
|
|
+ List<Criteria> dataList = new ArrayList<>();
|
|
|
+ List<String> filedsList = Lists.newArrayList("交易对手账号", "交易对手户名");
|
|
|
+ for (String s : filedsList) {
|
|
|
for (String noQueryDatum : noQueryData) {
|
|
|
- Criteria newCri = new Criteria(s); Pattern compile = Pattern.compile("^((?!" + noQueryDatum + ").)*$", Pattern.CASE_INSENSITIVE); newCri.regex(compile); dataList.add(newCri);
|
|
|
- } Criteria newFile = new Criteria(s); newFile.ne(null).ne(""); dataList.add(newFile);
|
|
|
- } return dataList;
|
|
|
+ Criteria newCri = new Criteria(s);
|
|
|
+ Pattern compile = Pattern.compile("^((?!" + noQueryDatum + ").)*$", Pattern.CASE_INSENSITIVE);
|
|
|
+ newCri.regex(compile);
|
|
|
+ dataList.add(newCri);
|
|
|
+ }
|
|
|
+ Criteria newFile = new Criteria(s);
|
|
|
+ newFile.ne(null).ne("");
|
|
|
+ dataList.add(newFile);
|
|
|
+ }
|
|
|
+ return dataList;
|
|
|
}
|
|
|
|
|
|
|