请考虑以下事项:
WRONG
地址1:12 ST。 JOHN DRIVE
地址2:
CORRECT
SAON:12
Thorofare:ST JOHN DRIVE
我需要执行一些REGEX来匹配这两个地址,因为你可以看到它们之间的主要区别是:
1。)道路名称已写入房屋名称/编号字段
2。)在错误的地址中单词ST之后有一个DOT。
我有一个CORRECT地址列表,与有问题的邮政编码中的错误地址相匹配。从这个列表中我想将其过滤到正确的1地址。
这是我到目前为止所做的:
Addresses.FirstOrDefault(x => x.paon.Trim() == Regex.Replace(exception.AddressLineOne, "[^0-9.]", "") && x.thorofare.Trim() == Regex.Replace(exception.AddressLineOne, "[^\\d-]", ""));
我想要做的是首先从WRONG地址1中删除所有非数字的数字并将其与CORRECT saon
匹配,然后从错误地址1中删除所有数字而且,虽然我在替换任何
使用空字符串,然后将其与CORRECT thorofare
匹配。
我想我已经在我的代码中完成了第一部分,但是无法看到如何删除点并用空字符串替换它?
那么,我如何使用正则表达式删除exception.AddressLineOne
中的所有数字并且还用零替换点?
答案 0 :(得分:0)
Addresses.FirstOrDefault(x => x.paon.Trim() == Regex.Replace(exception.AddressLineOne, "[^0-9]", "") && x.thorofare.Trim() == (Regex.Replace(exception.AddressLineOne, "[^a-zA-Z\\s]", "").Trim()))