這是一個有趣的問題,我一直在玩,但無法找到答案。紅寶石 - 從電子郵件地址中查找名字和姓氏的文本
我有一個包含電子郵件以及全名的非結構化數據的文本文件。我已經提取了電子郵件,但我想將首字母和姓氏映射到每封電子郵件。
所以假設電子郵件是[email protected],並在頁面上的某個地方是'凱文史密斯'。
我想使用'@'前的任何內容來映射文本中某處的全名。但顯然搜索'ksmith'將不會返回匹配。那麼,從左側開始,我會搜索一個較少的字符,即'smith',這將匹配。
但是當我找到'史密斯'的時候,我也想找到第一個名字。所以也許假設這將永遠是最後一個名字(因爲大多數電子郵件都有最後一個名字),並從'Smith'左邊搜索,直到到達下一個空間(在'Kevin'的前面),並確定'史密斯'之前和'凱文'之前的空間是第一個名字。
但是,如果全名是「Kevin Michael Smith」或「Kevin P. Smith」呢?在這種情況下,我不想要「邁克爾」或「P.」,但凱文是第一個名字。
或者,如果電子郵件結構[email protected],在這種情況下,從左邊收縮子將永遠是一個比賽,我就需要從其他方面嘗試爲好。
基本上我需要一個足夠聰明的方法來識別這些全名在很多情況下。
任何幫助,將不勝感激!
我試圖做到這一點在Ruby中,如果這能幫助
「M.凱文·史密斯」是另一種變體來考慮 - 誰的人通過他們的中間名去,或「JP史密斯」,或者是「 J. Michael Smith III先生「。我們不能忘記「雪兒」。我猜這種類型的問題經常遇到。 –
因此,您基本上希望我們修復您的模糊啓發式失敗的情況,併爲您編寫代碼?謝謝,也許是其他時間。寫實際的代碼,也許再問一次。 – tripleee
不要指望任何人爲我編碼,我只是想了解如何最好地解決這個問題。從Cary的評論中,我看到我沒有考慮過所有相關問題,並希望獲得有關如何解決此類問題的反饋,以及是否可以使用代碼進行可靠的工作。對不起,如果這個問題冒犯了你... – Zephyr4434