代码之家  ›  专栏  ›  技术社区  ›  mstrap

如何使Flexmark Java进程“@”-提到?

  •  1
  • mstrap  · 技术社区  · 7 年前

    在处理降价时,GitHub支持 @ -语法到 mention a username or team . 如何用Flexmark Java处理这样的提到?使用以下代码段, Hello, @world ! 作为一个 Text 我期望得到的节点 world 作为某种 提及 :

    final Parser parser = Parser.builder(new Parser.Builder()).build();
    final Document document = parser.parse("Hello, @world !");
    new NodeVisitor(Collections.emptyList()) {
           public void visit(Node node) {
               System.out.println("Node: " + node);
               super.visit(node);
           }
       }.visit(document);
    

    输出:

    Node: Document{}
    Node: Paragraph{}
    Node: Text{text=Hello, @world !}
    
    1 回复  |  直到 7 年前
        1
  •  0
  •   mstrap    7 年前

    有相应的扩展:

    final MutableDataHolder options = new MutableDataSet()
                    .set(Parser.EXTENSIONS, Collections.singletonList(GfmUsersExtension.create()));
    final Parser parser = Parser.builder(options).build();
    final Document document = parser.parse("Hello, @world, and #1!");
    ...
    
    推荐文章