我正在尝试为使用 Java 开发的第三方创建一个示例(我使用 C#),但这并未按预期工作。我的机器上没有任何 Java IDE,因此我使用 Ideone.com 来测试它。
要求是获取邮政编码的第一个字母部分(可以以 1 或 2 个字母字符开头)以用于单独的查找。
因此,给定MK34 8FD
,我期望MK
,给定S4 8BF
,我期望S
。
String source = "MK34 8FD";
String working = source.substring(0, 2);
String postcode = "";
for (int i = 0; i < 2; i++) {
String piece = working.substring(i, 1);
if (piece.matches("[a-zA-Z]")) {
postcode += piece;
}
}
使用上面的代码,postcode
总是显示为 M
,我不知道为什么?
最佳答案
substring()
的第二个参数是结束索引,而不是长度。
因此
String piece = working.substring(i, 1);
需要更改为
String piece = working.substring(i, i + 1);
关于java - 选择邮政编码中的前 1 个或 2 个字母字符,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14158057/