如何将vCard所有属性生成到正则表达式?

时间:2013-02-04 12:20:40

标签: regex c#-4.0 vcard argumentexception

我想为vCard Properties生成正则表达式。

对于Ex:

VERSION:

Regex regex = new Regex(@"(?<strElement>(VERSION))   (:(?<strVERSION>[^\n\r]*))", options);
 Match  m = regex.Match(s);

如何编写其他vcard proparty,如ADR,AGENT,PHOTO,ETC ......

http://en.wikipedia.org/wiki/VCard#hCard_1.0

1 个答案:

答案 0 :(得分:1)

对于这种简单的格式,最好避免使用regexp并使用简单的字符串操作。例如,文本可以通过\ n分割,然后每行可以用分号分割。

如果您想继续使用regexp,请尝试将VERSION替换为\ w +,将“”替换为“*”。我也不确定第二次分组是否必要。此外,可以添加^和$(然后应该使用多行正则表达式选项):

@"^(?<strElement>(\w+)) *:(?<strVERSION>.*)$"