C# 处理属性地址的正则表达式&;分组
我对正则表达式查询有点问题 我试图将一个地址从字符串解析为单独的变量。我的正则表达式在下面 (?(?[\d]+)(?[A-Za-z])|(?[\d]+)[/](?[A-Za-z0-9]))\s(?[A-Za-z0-9\s]*) 我需要把一个地址写进C# 处理属性地址的正则表达式&;分组,c#,regex,string,C#,Regex,String,我对正则表达式查询有点问题 我试图将一个地址从字符串解析为单独的变量。我的正则表达式在下面 (?(?[\d]+)(?[A-Za-z])|(?[\d]+)[/](?[A-Za-z0-9]))\s(?[A-Za-z0-9\s]*) 我需要把一个地址写进 街道号码 子编号 街道名称 我成功地实现了以下变化: Goldberg street 60B 街道编号=60B 数字=60 子节点=B 街道名称=戈德堡街 12/a索尔兹伯里路 街道编号=12/a 数字=12 子编号=a 街道名称=索尔兹伯里路 1
- Goldberg street 60B
- 街道编号=60B
- 数字=60
- 子节点=B
- 街道名称=戈德堡街
- 12/a索尔兹伯里路
- 街道编号=12/a
- 数字=12
- 子编号=a
- 街道名称=索尔兹伯里路
- 12/2索尔兹伯里路
- 街道编号=12/2
- 数字=12
- 子编号=2
- 街道名称=索尔兹伯里路
- 20/12索尔兹伯里路
- 街道号码=12
- 数字=1
- 子编号=2
- 街道名称=索尔兹伯里路
谢谢您在
?[a-Za-z0-9]
(?<streetAddress>(?<number>[\d]+)(?<subNumber>[A-Za-z?])|(?<number>[\d]+)[/]?(?<subNumber>[A-Za-z0-9]+))\s(?<street>[A-Za-z0-9\s]*)
(?(?[\d]+)(?[A-Za-z])|(?[\d]+)[/](?[A-Za-z0-9]+)\s(?[A-Za-z0-9\s]*)
不过,请注意,使用regex作为街道地址可能就像击中了一个移动的目标,即有太多可能的组合和格式,我怀疑您是否会得到一致的结果您在
?[a-Za-z0-9]之后缺少一个加号
(?<streetAddress>(?<number>[\d]+)(?<subNumber>[A-Za-z?])|(?<number>[\d]+)[/]?(?<subNumber>[A-Za-z0-9]+))\s(?<street>[A-Za-z0-9\s]*)
(?(?[\d]+)(?[A-Za-z])|(?[\d]+)[/](?[A-Za-z0-9]+)\s(?[A-Za-z0-9\s]*)
不过,请注意,使用正则表达式作为街道地址可能就像击中了一个移动的目标,即有太多可能的组合和格式,我怀疑您是否能够获得一致的结果您使用的是什么语言?哦,对不起,我以为我标记了c。您使用的是什么语言?哦,对不起,我以为我给它贴上了c#。你的地址完全正确,而且是个移动目标。谢天谢地,它是有限的,因为我“我从一个保持半一致格式的API中提取信息。不幸的是,它们没有将它们公开为sperate值。这真的很有帮助。谢谢你的帮助。需要另一双眼睛:)你的地址完全正确,是一个移动的目标。谢天谢地,它是有限的,因为我正在从一个保持半一致格式的API中提取信息。不幸的是,对我来说,他们没有将它们作为sperate值公开。这将非常有用。谢谢你的帮助。需要另一组眼睛:)