字符串 '_system@artifact_upload@v1.0.0' 和‘_system@NPM_BUILD’,怎么用java高效得到artifact_upload和NPM_BUILD,要求写一个通用方法
时间: 2024-02-07 08:03:54 浏览: 30
dark亲测可用的一个swfupload与java整合的小例子
可以使用正则表达式来提取需要的字符串。以下是一个通用的方法:
```java
public static String extractString(String input, String prefix, String suffix) {
String regex = prefix + "(.*?)" + suffix;
Pattern pattern = Pattern.compile(regex);
Matcher matcher = pattern.matcher(input);
if (matcher.find()) {
return matcher.group(1);
} else {
return "";
}
}
```
使用方法:
```java
String str1 = "_system@artifact_upload@v1.0.0";
String str2 = "_system@NPM_BUILD";
String prefix = "_system@";
String suffix = "@";
String result1 = extractString(str1, prefix, suffix); // "artifact_upload"
String result2 = extractString(str2, prefix, suffix); // "NPM_BUILD"
```
在这个方法中,`prefix` 是需要提取的字符串前面的部分,`suffix` 是需要提取的字符串后面的部分。然后使用正则表达式 `prefix + "(.*?)" + suffix` 来匹配需要提取的字符串。最后返回匹配到的字符串中的第一个分组(也就是括号里的部分)。如果没有匹配到,返回空字符串。
阅读全文