java正则表达式解析字符串,根据and或者or分隔字符串,and和or忽略大小写,解析结果直接得到分隔的结果列表
时间: 2025-01-19 09:17:03 浏览: 166
在Java中,你可以使用正则表达式配合`Pattern`和`Matcher`类来解析字符串。假设你有一个字符串,它是"key1 and key2 or key3", 其中关键词由"and"或"or"连接,并且我们想要忽略大小写,可以这样做:
```java
import java.util.ArrayList;
import java.util.List;
import java.util.regex.Matcher;
import java.util.regex.Pattern;
public class RegexParser {
public static List<String> parse(String input) {
String regex = "(\\w+(?:\\s+and\\s+|\\s+or\\s+)?)+";
Pattern pattern = Pattern.compile(regex, Pattern.CASE_INSENSITIVE);
Matcher matcher = pattern.matcher(input);
List<String> result = new ArrayList<>();
while (matcher.find()) {
result.add(matcher.group(0).toLowerCase()); // 将匹配到的部分转换为小写并添加到列表中
}
return result;
}
public static void main(String[] args) {
String str = "Key1 And Key2 Or Key3";
List<String> parsedList = parse(str);
System.out.println(parsedList); // 输出: [key1, key2, key3]
}
}
```
这个示例中,`parse`方法会返回一个包含所有关键词的小写版本的列表。`regex`变量定义了正则模式,用于查找连续的关键词,中间可以有"and"或"or",并且我们会忽略大小写。
阅读全文
相关推荐

















