Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/regex/16.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 正则表达式删除所有带有空字符串的数字和点_C#_Regex - Fatal编程技术网

C# 正则表达式删除所有带有空字符串的数字和点

C# 正则表达式删除所有带有空字符串的数字和点,c#,regex,C#,Regex,考虑以下几点: 错 地址1:圣约翰大道12号 地址2: 正确的 桑:12 托洛法尔:圣约翰大道 我需要执行一些正则表达式来匹配这两个地址,因为您可以看到它们之间的主要区别是: 1.)道路名称已写入房屋名称/编号字段 2.)在错误地址的单词ST后面有一个点 我有一个正确地址的列表,这些地址与问题的邮政编码中的错误地址相匹配。我想从这个列表中筛选出正确的1地址 这就是我到目前为止所做的: Addresses.FirstOrDefault(x => x.paon.Trim() == Regex.

考虑以下几点:

地址1:圣约翰大道12号

地址2:

正确的

桑:12

托洛法尔:圣约翰大道

我需要执行一些正则表达式来匹配这两个地址,因为您可以看到它们之间的主要区别是:

1.)道路名称已写入房屋名称/编号字段

2.)在错误地址的单词ST后面有一个点

我有一个正确地址的列表,这些地址与问题的邮政编码中的错误地址相匹配。我想从这个列表中筛选出正确的1地址

这就是我到目前为止所做的:

Addresses.FirstOrDefault(x => x.paon.Trim() == Regex.Replace(exception.AddressLineOne, "[^0-9.]", "") && x.thorofare.Trim() == Regex.Replace(exception.AddressLineOne, "[^\\d-]", ""));
我想做的是,首先从错误的地址1中删除所有不是数字的内容,并将其与正确的
saon
匹配,然后从错误的地址1中删除所有不是数字的内容,同时,替换任何内容

使用空字符串,然后将其与正确的
thorofare
匹配

我想我已经完成了代码的第一部分,但是我不知道如何删除点并用空字符串替换它


那么,如何使用正则表达式从
异常.AddressLineOne
中删除所有数字,并用零替换点?

您熟悉
字符串.replace
函数吗?是,你能告诉我如何使用它来完成我想要的吗?你会想查找string.Contains函数,你也可以使用char.IsDigit函数来编写你自己的逻辑。用
”替换
/[0-9\.]/g
。所以regex不是这样做的方法吗?
Addresses.FirstOrDefault(x => x.paon.Trim() == Regex.Replace(exception.AddressLineOne, "[^0-9]", "") && x.thorofare.Trim() == (Regex.Replace(exception.AddressLineOne, "[^a-zA-Z\\s]", "").Trim()))