gpt4 book ai didi

regex - 带有正则表达式的 debezium 表白名单

转载 作者:行者123 更新时间:2023-12-03 20:16:54 27 4
gpt4 key购买 nike

我有一些带有 bg_ 和 cp_ 前缀的数据库表,例如“bg_table1”、“bg_table2”和“cp_table1”。还有一些没有任何前缀的其他表,例如 my_table1、user_action 等等。

我有两个 debezium postgreSQL 连接器并尝试配置 table.whitelist通过关注 Debezium 获得的属性(property) - http://debezium.io/docs/connectors/postgresql/#connector-properties .我的要求如下:

  • 在第一个连接器中,我想加载名称以 开头的表bg_ cp_
  • 在第二个连接器中,我想加载其余的表格 - 开始bg_ cp_

  • 我在连接器配置中使用了类似下面的东西,但不起作用:

    第一个连接器配置:
    "table.whitelist": "public.bg_*,public.cp_*" 

    第二个连接器配置:
    "table.whitelist": ""  Cannot figure out need your help

    如果有人能帮我弄清楚,那就太好了。提前致谢!

    最佳答案

    试试这个为你的白名单:

    "table.whitelist": "public\.(bg|cp)_.*"

    Demo

    并为您的黑名单尝试此操作:
    "table.whitelist": "public\.(?!(bg|cp)_)[^_]+_.*"

    Demo

    第一种模式应该几乎适用于任何正则表达式引擎。第二种模式使用负前瞻。只有当您的正则表达式引擎支持它时,它才会起作用。如果没有,那么使用您想要使用的逻辑编写模式将更加困难。

    注意:在 Java 代码的上下文中,您可能需要将反斜杠加倍以转义点之类的东西。也就是说,您可能必须使用以下版本,例如
    "table.whitelist": "public\\.(bg|cp)_.*"

    关于regex - 带有正则表达式的 debezium 表白名单,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51345636/

    27 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com