卡夫卡转换忽略正则表达式
Kafka transforms ignoring regex
我正在尝试使用 kafka transforms.RemoveString 修改我的主题名称,然后再将它传递到我的连接器中。我的主题名称是这样的
foo.bar_1.baz
我想提取 bar_1 并将其作为主题名称传递。据我所知 regex is correct 但 kafka 转换似乎不喜欢它 -
transforms=ReplaceField,RenameField,RemoveString
transforms.RemoveString.type=org.apache.kafka.connect.transforms.RegexRouter
transforms.RemoveString.regex=(\w*.)(\w*\d+)(.*)
transforms.RemoveString.replacement=
我可以看出正在使用 RemoveString,因为当我将正则表达式更改为以下内容时,我得到了我想要的结果,但这对我的用例来说相当严格 -
transforms.RemoveString.regex=(foo.)(.*)(.baz)
transforms.RemoveString.replacement=
在 Kafka 转换中使用正则表达式是否有某种限制?
您在 RegexRouter 中输入错误,您错过了 R
transforms=ReplaceField,RenameField,RemoveString
transforms.RemoveString.type=org.apache.kafka.connect.transforms.RegexRouter
transforms.RemoveString.regex=(\w*.)(\w*\d+)(.*)
transforms.RemoveString.replacement=
发现问题,必须转义反斜杠,使用我改进的正则表达式,它现在看起来像这样 -
(\w*)\.(\w+)\.(.*)
我正在尝试使用 kafka transforms.RemoveString 修改我的主题名称,然后再将它传递到我的连接器中。我的主题名称是这样的
foo.bar_1.baz
我想提取 bar_1 并将其作为主题名称传递。据我所知 regex is correct 但 kafka 转换似乎不喜欢它 -
transforms=ReplaceField,RenameField,RemoveString
transforms.RemoveString.type=org.apache.kafka.connect.transforms.RegexRouter
transforms.RemoveString.regex=(\w*.)(\w*\d+)(.*)
transforms.RemoveString.replacement=
我可以看出正在使用 RemoveString,因为当我将正则表达式更改为以下内容时,我得到了我想要的结果,但这对我的用例来说相当严格 -
transforms.RemoveString.regex=(foo.)(.*)(.baz)
transforms.RemoveString.replacement=
在 Kafka 转换中使用正则表达式是否有某种限制?
您在 RegexRouter 中输入错误,您错过了 R
transforms=ReplaceField,RenameField,RemoveString
transforms.RemoveString.type=org.apache.kafka.connect.transforms.RegexRouter
transforms.RemoveString.regex=(\w*.)(\w*\d+)(.*)
transforms.RemoveString.replacement=
发现问题,必须转义反斜杠,使用我改进的正则表达式,它现在看起来像这样 -
(\w*)\.(\w+)\.(.*)