RegEx用于匹配Informatica中的unicode

时间:2019-05-03 17:43:58

标签: regex unicode regex-group informatica informatica-powercenter

要求:我需要在地址字段中识别无效数据。对于此字段,有效数据是数字,字母,某些特殊字符(#&-'`./\s),两个单词之间的空格(单词可以是字母,数字或允许的特殊字符之一)的组合。我正在尝试使用以下reg匹配表达式:

import Scripts.inference_question_to_topk.py

问题:

  1. 我无法在列表中添加'(引号)。
  2. 它还在数据末尾留出了空间,这是不应该的。

如何解决此问题?

2 个答案:

答案 0 :(得分:3)

我对Informatica并不熟悉,但是您可能可以将'替换为\x27,“替换为\ x22,'替换为\ x {2018}和'替换为\ x {2019}


This expression显示了它是如何工作的:

^([a-zA-Z0-9#&\-`\.\/\s\x22\x27\x{2019}\x{2018}]+)$

enter image description here

此图显示了表达式的功能:

enter image description here

说明

正确使用\ x2019和\ x2018将是\ x {2018}和\ x {2019}。显然,如果没有此设置,引擎将认为它是 \ x20和18 \ x20和19 ,即I did not know that

enter image description here

答案 1 :(得分:0)

如果您的目标是验证地址,那么Informatica将提供地址验证服务,并且在大多数国家/地区都可以正常使用。 如果您真的只想使用regex验证地址,那么emma给出的内容应该足够,然后使用ltrim-rtrim组合删除结尾处的空格,如下所示,

ltrim(rtim(re_ex_result_here))

这将帮助您消除最后的空格。

More on Informatica Address validator here