java - 从特定模式拆分字符串

标签 java string

我怎样才能把这个字符串从一个模式变成两个不同的变量?

字符串:[ADDRESS] 自定义地址 n 1"
变量 type 将是 "ADDRESS" 并且变量 field 将是 “自定义地址 n 1”
是否可以不对每个字符进行复杂的循环检查?

最佳答案

您可以将正则表达式与捕获组一起使用:

Pattern p = Pattern.compile("\\[(.*)\\] (.*)");
Matcher m = p.matcher("[ADDRESS] Custom address n 1");
if (m.find()) {
    String type = m.group(1);
    String field = m.group(2);
}

关于java - 从特定模式拆分字符串,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51506908/

相关文章:

java - 字符串近似(从字典中获取最接近的匹配字符串)

python - 将字符串中的子字符串大写

java - 如何在 Android 中每 60 秒运行一次代码

java - 无法解析的构建扩展 : or one of its dependencies could not be resolved: Failed to read artifact descriptor

java - 当 Web 服务器线程中出现 OutOfMemoryError 时,Spring 启动请求会挂起

java - SQL语句对象在哪些情况下会自动关闭?

javascript - 根据字符数和空格数用正则表达式拆分字符串

c - 子串替换

java - 如何从文件内容创建 Java 字符串?

java - 泛型:为什么在方法参数传递中允许使用通配符进行强制转换,反之亦然?