在 java 中解析 String 和 Int
Parsing String and Int in java
我正在使用 java,我有一个要解析的字符串,其中包含以下内容
Logging v0.12.4
并想将其拆分为包含
的字符串
Logging
和一个包含
的整数数组
0.12.4
哪里
array[i][0] = 0
和
array[i][1] = 12
等等。我已经坚持了一段时间了。
您可以使用正则表达式或只是普通的字符串拆分
String myString = "Logging v0.12.4";
String[] parts = myString.split(" v");
// now parts[0] will be "Logging" and
// parts[1] will be "0.12.4";
然后对版本部分做同样的事情:
String[] versionParts = parts[1].split("\.");
// versionParts[0] will be "0"
// versionParts[1] will be "12"
// versionParts[2] will be "4"
您可以 "convert" 使用 Integer.parseInt(...)
将这些转换为整数
- 在 space 上拆分您的字符串以获得
Logging
和 v0.12.4
- 从
v0.12.4
中删除(子字符串)v
- 在点上拆分
0.12.4
(使用 split("\.")
因为点在正则表达式中很特殊)
- 您还可以将每个
"0"
"12"
"4"
解析为整数(Integer.parseInt
可能会有帮助)。
伙计,你来了,因为我今天很慷慨:
String string = "Logging v0.12.4";
Matcher matcher = Pattern.compile("(.+?)\s+v(.*)").matcher(string);
if (matcher.matches()) {
String name = matcher.group(1);
int[] versions = Arrays.stream(matcher.group(2).split("\.")).mapToInt(Integer::parseInt).toArray();
}
我正在使用 java,我有一个要解析的字符串,其中包含以下内容
Logging v0.12.4
并想将其拆分为包含
的字符串Logging
和一个包含
的整数数组0.12.4
哪里
array[i][0] = 0
和
array[i][1] = 12
等等。我已经坚持了一段时间了。
您可以使用正则表达式或只是普通的字符串拆分
String myString = "Logging v0.12.4";
String[] parts = myString.split(" v");
// now parts[0] will be "Logging" and
// parts[1] will be "0.12.4";
然后对版本部分做同样的事情:
String[] versionParts = parts[1].split("\.");
// versionParts[0] will be "0"
// versionParts[1] will be "12"
// versionParts[2] will be "4"
您可以 "convert" 使用 Integer.parseInt(...)
将这些转换为整数- 在 space 上拆分您的字符串以获得
Logging
和v0.12.4
- 从
v0.12.4
中删除(子字符串) - 在点上拆分
0.12.4
(使用split("\.")
因为点在正则表达式中很特殊) - 您还可以将每个
"0"
"12"
"4"
解析为整数(Integer.parseInt
可能会有帮助)。
v
伙计,你来了,因为我今天很慷慨:
String string = "Logging v0.12.4";
Matcher matcher = Pattern.compile("(.+?)\s+v(.*)").matcher(string);
if (matcher.matches()) {
String name = matcher.group(1);
int[] versions = Arrays.stream(matcher.group(2).split("\.")).mapToInt(Integer::parseInt).toArray();
}