gpt4 book ai didi

java - 将字符串解析为整数

转载 作者:行者123 更新时间:2023-11-30 02:34:24 25 4
gpt4 key购买 nike

我的构造函数遇到问题。我传入一个字符串,我应该获取该字符串的整数值。

字符串看起来像[a2, a3][a4, a6][a10, a22]

我想首先去掉 a,我已经做到了,但我正在努力将 2、3、4、6、10、22 等转换为整数。我的猜测是循环遍历字符串并解析出不是逗号或 [, 或 ] 的数据,但我正在摸索着转换。这就是我到目前为止所拥有的。

public Converter(String str) {
String getRidOfAPrefix = str.replaceAll("a", "");
for (int i = 0; i < getRidOfAPrefix.length(); i++) {
char charactersOfString = getRidOfAPrefix.charAt(i);
if (charactersOfString == '[') {
// A bit lost here

如果有任何提示,我将不胜感激。我已经为此苦苦挣扎了几个小时。

最佳答案

选项 1,先拆分 ][,然后拆分 ,,然后使用正则表达式替换所有非数字。就像,

String str = "[a2, a3][a4, a6][a10, a22]";
for (String x : str.split("\\]\\[")) {
for (String s : x.split("\\s*,\\s*")) {
System.out.println(s.replaceAll("\\D", ""));
}
}

选项 2,使用 Pattern 查找与 a 后跟数字匹配的所有内容。然后使用循环获取所有匹配项,从第二个字符中获取子字符串(以跳过 a)。就像,

Pattern p = Pattern.compile("a\\d+");
Matcher m = p.matcher(str);
while (m.find()) {
System.out.println(m.group().substring(1));
}

两个选项输出

2
3
4
6
10
22

关于java - 将字符串解析为整数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43483802/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com