当 AccountNo 大于 15 位或 X 位时删除尾随零

我真的很想在 Java 中完成这项工作,但仍然无法修复它。我的帐户范围从 15 位到 19 位不等。


例 1:


String accountNo = "1111101111111100000";

String accountNo1= "11111011111111";

我需要删除所有尾随零并比较accountNo=11111011111111和accountNo1=11111011111111是否相同,然后将其标记为真。


我使用了下面的代码,但在 Account Number 最后实际包含 0 的地方没有帮助。有时,我知道 AccountNo 是否为 15 位数字,然后检查 updatedAcc 帐户中是否存在所有字符/数字,如果匹配则认为是真的?


比较主要是我想做 List vs List


String account = "1111101111111100000"; //19 digits

String updatedAcc ="11111011111111";

String value = account.replaceAll("0+$", "");

Ex2:在这种情况下,我不想删除所有零。最后一个零应保持原样。我希望你现在得到这个问题。


String account = "1111101111111000000"; //19 digits

String updatedAcc ="11111011111110";

String value = account.replaceAll("0+$", "");


尚方宝剑之说
浏览 150回答 1
1回答

当年话下

不是一个理想的解决方案,但这是我能想到的最好的解决方案:    if (accountNo.length() > 15) {        if (accountNo.substring(16, accountNo.length()).matches("000")) {            accountNo = accountNo.substring(1, 16);        } else if (accountNo.substring(17, accountNo.length()).matches("00")) {            accountNo = accountNo.substring(1, 17);        } else if (accountNo.substring(18, accountNo.length()).matches("0")) {            accountNo = accountNo.substring(1, 18);        }    }
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

Java