我需要檢查包含電子郵件列表的字符串。這些電子郵件通常以逗號分隔,但我需要檢查該列表中是否有逗號以外的分隔符。下面是一個例子:在C中的字符串中拆分子串#
[email protected],[email protected],[email protected]#[email protected]
我需要識別不同的字符並替換爲逗號。
我不能只用正則表達式來識別除逗號以外的特殊字符,並替換它們,因爲電子郵件可能有一些這些字符。所以我需要找到兩封電子郵件之間的東西。 我做了如下正則表達式來一封電子郵件,我相信它會覆蓋大部分的電子郵件:
^[a-z0-9!#$%&'*+/=?^_`{|}~-]+(?:\.[a-z0-9!#$%&'*+/=?^_`{|}~-]+)*@[a-z0-9]+(\.[a-z0-9]+)+$
但我對如何用它來解決我的問題有點失落,使用C# 。我需要捕獲這個正則表達式的兩個匹配之間的東西,並替換爲逗號。
任何人都可以幫助我嗎? 謝謝。
你是什麼意思?這是一個隨機角色嗎?我猜想它不應該在那裏。 如果是隨機的,請檢查所有有效字符,並用逗號替換無效字符。 如果不是:'emails.Replace('#',',')':p – joppiesaus 2014-11-03 15:22:16
爲什麼不僅匹配有效的電子郵件地址並過濾掉其餘的郵件地址。 – 2014-11-03 15:22:45
如果分隔符可能是電子郵件中名稱的任何有效字符,則說明存在嚴重問題 – dariogriffo 2014-11-03 15:23:11