Jackson YAML:使用标志映射正则表达式模式

2023-12-08

在杰克逊,我可以绘制地图YAML 中的字符串:

regexField: "(\\d{2}):(\\d{2})"

to a Pattern类上的字段:

final class MappedFromYaml {
    private Pattern regexField;
    // ... accessors
}

杰克逊的ObjectMapper将创建一个Pattern带有默认标志。是否可以使用设置的特定标志来创建它,例如Pattern.MULTILINE?理想情况下,我希望能够在 YAML 中指定这些标志,但如果失败的话,也将赞赏在 Java 代码中为特定字段指定标志的解决方案。


有两种方法。第一种是直接嵌入flags进入正则表达式:

regexField: "(\\d{2}):(\\d{2})(?m)"

否则不要直接映射到Pattern,但是引入一个自定义类型,例如PatternBuilder

public class PatternBuilder {
  public String regex;
  public boolean multiline;
  public Pattern pattern() {
    int flags = 0;
    if (multiline) flags |= Pattern.MULTILINE;
    return Pattern.compile(regex, flags);
  }
}

可以从 YAML 构建

pattern:
  regex: "(\\d{2}):(\\d{2})"
  multiline: true
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

Jackson YAML:使用标志映射正则表达式模式 的相关文章

  • Java“空白最终字段可能尚未初始化”方法中抛出异常

    我有一些代码 例如 final int var1 if isSomethingTrue var1 123 else throwErrorMethod int var2 var1 throwErrorMethod 的定义如下 private
  • 如何为java注释处理器编写自动化单元测试?

    我正在尝试使用 java 注释处理器 我可以使用 JavaCompiler 编写集成测试 事实上我现在正在使用 hickory 我可以运行编译过程并分析输出 问题 即使我的注释处理器中没有任何代码 单个测试也会运行大约半秒 对于以 TDD
  • EMF Eclipse:带有自定义字段(属性)的枚举

    好吧 在 Java 中这是可能的 import org eclipse emf common util Enumerator public enum MyEnum implements Enumerator LITERAL1 0 Name
  • 我需要一个字数统计程序[关闭]

    这个问题不太可能对任何未来的访客有帮助 它只与一个较小的地理区域 一个特定的时间点或一个非常狭窄的情况相关 通常不适用于全世界的互联网受众 为了帮助使这个问题更广泛地适用 访问帮助中心 help reopen questions 我需要弄清
  • spring mvc 跟踪引用页面

    在基于注释的弹簧控制器中 如果用户正在url com first page并点击一个链接或提交一份表格指出url com second page 如何制作second page知道url of first page所以这样second pa
  • 为什么在线解析器似乎停在正则表达式处?

    我一直想知道为什么似乎没有任何解析器 比如说 BNF http en wikipedia org wiki Backus E2 80 93Naur Form 其行为类似于各种库中的正则表达式 当然 还有类似的事情ANTLR http www
  • 如何仅替换多个文件中记事本++中的第一个文本实例?

    我正在努力更新一个网站并进行一些更改 并且我已经成功使用标准查找和替换搜索对多个文件进行了大部分更改 我的 f r 中只留下一个错误需要修复 但它在整个文档中出现了几次 我只想替换第一个实例 这是唯一一次错误 div class boxb
  • java中日期转换dd-MMM-yyyy到dd-MM-yyyy

    在Java中将23 Mar 2011转换为23 03 2011的最简单方法是什么 感谢大家 这似乎解决了这个问题 try Calendar cal Calendar getInstance cal setTime new SimpleDat
  • Java字符串查找和替换的最佳方法?

    我正在寻找 Java 中字符串查找和替换的最佳方法 这是一句话 我的名字叫米兰 人们都知道我叫米兰瓦西奇 我想用 Milan Vasic 替换 Milan 弦 但在我已经有 Milan Vasic 的地方 情况不应该是这样 搜索 替换后的结
  • 获取包中声明的所有 Java 类的名称

    我正在编写一个功能 它将有助于将类放入我的程序的某个包中 另外 我只想要子类某个类的类 我需要这些类才能调用它们的静态方法 有没有一种自动的方法来做到这一点 如果是的话 速度慢吗 如果我不清楚 我想要的是这样的 ArrayList
  • Java 中更高级的泛型

    假设我有以下课程 public class FixExpr Expr
  • 更新分页。是否可以?

    他们是否存在一些方法来处理更新分页 例如我有 100 行类型 Id private Integer id Column private boolean flag Column private Date last 一开始它们看起来像 id f
  • 转换MAC地址格式

    我刚刚编写了一个小脚本 从交换机中提取数百个 MAC 地址进行比较 但它们的格式为 0025 9073 3014 而不是标准的 00 25 90 73 30 14 我对如何转换它感到困惑 我能想到的最好的办法就是在 处将它们分解成碎片 然后
  • 如何在 Log4j2 - JSON 布局中自定义或删除默认属性

    In Spring Boot 2我已配置的应用程序Log4j2 with JsonLayout像下面这样
  • 构造函数参数和属性一起出现在 bean 定义中

  • 如何列出Resources文件夹中的所有文件(java/scala)

    我正在编写一个函数 需要访问资源中的文件夹 并循环遍历所有文件名 如果这些文件符合条件 则加载这些文件 new File getClass getResource images sprites getPath listFiles 返回空指针
  • 使用结构解析 YAML

    我创建了以下 YAML 文件来提供用户需要提供的一些配置 Environments sys1 models app type app1 service type fds app type app2 service type era sys2
  • 如何创建具有同等时间元素的 JavaFX 转换?

    我正在尝试 JavaFX 和动画 尤其是PathTransition 我正在创建一个简单的程序 使球 弹跳 而不使用QuadCurveTo班级 到目前为止 这是我的代码 Ellipse ball new Ellipse 375 250 10
  • 获取Java中ResultSet返回的行数

    我用过一个ResultSet返回一定数量的行 我的代码是这样的 ResultSet res getData if res next System out println No Data Found while res next code t
  • Java 可变 BigInteger 类

    我正在使用 BigIntegers 进行计算 该计算使用一个调用 multiply 大约 1000 亿次的循环 并且从 BigInteger 创建新对象使其非常慢 我希望有人编写或找到了 MutableBigInteger 类 我在 jav

随机推荐

  • 在 Android 中运行时更新视图

    这个例子非常简单 我想让用户通过显示文本 canvas drawText 来了解应用程序正在做什么 然后 我的第一条消息出现 但其他消息则不出现 我的意思是 我有一个 setText 方法 但它不更新 onCreate Bundle bun
  • Gradle 构建失败并提示:找不到 org.jetbrains.kotlinx:kotlinx-collections-immutable-jvm:0.3.3

    我正在使用 Android Studio Canary 构建一个新项目 在设置 jet pack compose 的依赖项时 我将其作为构建输出 Execution failed for task app processDebugAndro
  • TKinter 样式和 Treeview 点击问题

    我在 TKinter 中的样式上遇到了困难 我的主要问题是您无法单击树视图中的任何内容 要进行测试 只需按 按测试 按钮即可 由于某种原因 style theme create 接管了我的树视图小部件 无论我尝试什么 我似乎都找不到解决方案
  • 如何检查Azure Function是否仍在运行

    我遇到一种情况 我必须定期调用 Azure 函数 当我调用该函数时 我需要检查天蓝色函数的状态 如果Azure函数正在运行 那么我需要推迟调用直到它完成 我正在尝试查看电子邮件队列 当电子邮件传入时 我需要使用 Amazon SES 发送电
  • 如何在 Obj-C 中打开和读取资源分支

    我有一个旧的 OS9 文件 其中包含带有 CODE 资源的资源叉 我想从 Obj C 读取该文件 我用类似的东西 NSFileHandle codeFile NSFileHandle fileHandleForReadingAtPath m
  • 如何在 python 中生成 nginx 安全链接

    如何使用 python 为 nginx 中的安全链接模块建立链接 我希望使用 nginx 来提供具有过期链接的安全文件 链接到 Nginx 维基 shadfc 答案中的代码有效 为了Python 3 需要进行一些修改 import base
  • 用 PHP 解决验证码问题?个人挑战?

    我想看看我是否可以使用 PHP 解决验证码 以应对一些个人挑战 没什么太难的 同一行中的单词 始终使用相同颜色的单词等 这是一个示例 http www simplyshows com img jpg 只是想看看会有多难 我的问题是 是否有基
  • 确定构造函数、初始化和重置方法的任务的最佳实践是什么

    尽管我是用 Java 设计的 但这是一个常见的 OOP 问题 我并不是想解决某个特定问题 只是想思考一些设计原则 根据我的经验 我养成了将对象设置分为三个阶段的习惯 目标是最大限度地减少 额外的工作 混乱的代码和受损的可扩展性 建造 所需采
  • subprocess.Popen 命令(反词)在 shell 与 Web 应用程序中产生不同的输出

    我让 Django 在标准 WSGI Apache httpd 组合上运行 我注意到当我在 shell 中运行代码与在浏览器中运行代码时 文件输出是不同的 我已经隔离了其他所有内容 但仍然遇到同样的问题 这是代码 def test anti
  • 如何将 JavaPairDStream 的结果写入 Spark Streaming 上的输出 kafka 主题?

    我正在寻找一种在输出 kafka 主题中编写 Dstream 的方法 只有当微批量 RDD 吐出一些东西时 我在 Java8 中使用 Spark Streaming 和 Spark streaming kafka 连接器 都是最新版本 我无
  • delphi 7中如何读取资源文件?

    我已经制作了资源文件 并已将其编译并与我的 delphi 单元链接 但是从该资源文件读取时我遇到了问题 implementation R dfm R stuff res stuff rc procedure TForm1 FormCreat
  • Firebase getDocument(querySnapshot)不起作用

    我面临着 Firebase 快照的问题 我已成功将我的 Fierbase 帐户与我的 Xcode 项目连接起来 我能够更改 Firestore 云中的数据 但我读不懂 这是我的功能 class UserService static func
  • 色彩空间转换

    我正在尝试编写一个程序 在用户输入图像后 他可以看到一些小的图像处理 更具体地说 我想将图像从 RGB 转换为 CMYK 和 YUV 然后在屏幕上仅显示这些颜色空间中的一个分量 即仅来自 CMY 的青色或来自 YUV 的 U 我设法实现了转
  • 在 iPhone 的 Objective-C 中解析 Java 属性文件

    我正在 iPhone SDK 中寻找一种读取属性文件 不是 XML 风格 的方法 例如 a comment a comment a a string b a string with escape sequences t n r space
  • Windows 上的 libgit2 可能存在 Rugged gem 安装问题

    我正在使用 Windows 和我的Gemfile有这一行 gem rugged 当我跑步时bundle install它给了我这个错误 Installing rugged 0 21 0 with native extensions Gem
  • java中的ArrayList打印最后插入的值?

    我有以下java类 package com picvik model import java util Date public class ViewAlbum private Integer albumid private String a
  • 将引号替换为“``”和“''”

    我有一个包含很多内容的文档 标记 但我想将其转换为在 TeX 中使用 TeX 使用 2 个 标记作为开始引号 使用 2 个 标记作为结束引号 我只想在以下情况下对这些进行更改 以偶数出现在单行上 例如 有 2 4 或 6 已上线 例如 Th
  • 有没有办法强制从特定堆栈帧返回后不使用 Rust 原始指针?

    我正在为 主要是 C 风格 C 插件 SDK 编写一个 Rust 包装器 插件主机是一个运行事件循环的图形桌面应用程序 该插件定期作为该事件循环的一部分被调用 每当这种情况发生时 插件就具有控制权并可以调用任意主机函数 我想要包装的一个 C
  • 如何检查 $data 变量是否使用 Codeigniter 设置?

    当我设置像这样的数据时 data say something Hello 并将其发送到视图 this gt load gt view my page data 如何在视图中检查变量 say something 是否已设置 有 Codeign
  • Jackson YAML:使用标志映射正则表达式模式

    在杰克逊 我可以绘制地图YAML 中的字符串 regexField d 2 d 2 to a Pattern类上的字段 final class MappedFromYaml private Pattern regexField access