我有一个String
,其中包含一个邮件地址列表,如下所示:
Dim address1 As String = """Merkel, Angela"" <angela@example.com>, ""Peter Altmeyer"" <peter@example.com>"
我想要的是将逗号分开String
。我认为我需要Regexp.Split
因此,但我没有线索,我需要做什么来获得
"Merkel, Angela" <angela@example.com>
"Peter Altmeyer" <peter@example.com>
我特别对双引号""
感到困惑,以逃避引号。这在正则表达式中也是如此转义吗?
答案 0 :(得分:1)
您可以使用String.Split
方法,只需添加“&gt;”即可。在分隔符(“&gt;,”);然而“&gt;”将从结果中遗漏,并将不得不重新添加。
使用Regex,您可以按照以下方式执行此操作:
Dim parts() As String = Regex.Split(address1, "(?<=>),\s")
这里我使用正则表达式
(?<=prefix)find
找到前缀后面的位置。结果不包括前缀。因此,仅从输出中删除", "
和“&gt;”仍然存在。
答案 1 :(得分:1)
您可以拆分此RegEx:(?<=>),\s*?(?="")
。它找到逗号(后面有零个或多个空格)前面有一个<
,后面跟一个""
。
答案 2 :(得分:0)
Dim address1 As String = """Merkel, Angela"" <angela@example.com>, ""Peter Altmeyer"" <peter@example.com>"
Dim parts() As String = Regex.Split(address1, "(?<=>),\s*?(?="")")