java - 基于位置信息的正则表达式匹配

标签 java regex

我正在开发一个 Java 项目,该项目获取基于位置的信息并向用户提供相关信息。在处理此问题时,我在文本文件中获取了以下格式的信息:

[loc.x.1234] has logged in. Connects to [loc.x.983]
[loc.x.3427] has left the room.

信息始终位于方括号 ( [ ] ) 中,格式为 (string.string.string)。

我的目标是从这些文件提要中提取用户信息。我的输出应采用以下格式:

loc.x.1234,loc.x.983
loc.x.3427

虽然我已经编程几个月了,但我不熟悉正则表达式的使用。任何与此相关的帮助表示赞赏。

最佳答案

这可能对您有帮助:

    String a="[loc.x.1234] has logged in. Connects to [loc.x.983]" +
            "[loc.x.3427] has left the room.";
    String regExp="(?<=\\[).*?(?=\\])";
    Pattern p = Pattern.compile(regExp);
    Matcher m = p.matcher(a);
    while(m.find()){
        System.out.println(m.group());
    }

“(?<=\[)”和“(?=\])”丢弃“[”和“]”

关于java - 基于位置信息的正则表达式匹配,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20390383/

相关文章:

java - ArrayList的值在匿名内部类之外是不同的

java - 为什么 Java 中的转义点正则表达式与条目字符串不匹配

java - 如何在java中制作正则表达式语法

java - 使用 BufferedImage 序列化对象的 ArrayList

java - 如何正确地将InputStream传递给另一个构造函数? ( java )

Java - 为什么这种模式匹配不起作用?

regex - 不区分大小写的 JFlex 正则表达式

javascript -/(\S)\1(\1)+/g 匹配三个相等的非空白字符的所有出现

java - JAXB Marshal 异常 : . Impl 类或其任何父类(super class)都不为任何此上下文所知

java - 通过复制远程启动/停止 Apache Camel 路由