簡體   English   中英

從電子郵件中提取客戶數據

[英]Extract customer data from email

我通過使用php的imap接收電子郵件,並且得到了郵件的正文。 我需要從此消息中提取一些客戶信息,例如姓名,電子郵件,日期和相關公寓。

--_av-ml1j40HUdHU5gAwKk3Xhrg
Content-Type: text/plain; charset=utf-8
Content-Transfer-Encoding: quoted-printable

       --- Para responder este email, clique no botão azul abaixo ---     


Fernando, há um interessado em alugar seu imóvel!        
  COBERTURA Fantástica de FRENTE MAR! Para 6, Wifi, Ar C., Churrasq
<https://www.temporadalivre.com/conversas?id_hash=Guoqweasdd8xpu9jqlGN> 
     *Dados do Interessado*

  *Vagner Fulano*
 *vagner.spqweor01@gmail.com*

 *Período*

 21 de Dezembro de 2019 a 
26 de Dezembro de 2019
(*5 diárias*) 

 *Hóspedes*

  2 adultos, 1 criança

 *Telefone*

 44999238255

 *País*

 Brasil

 (localização por estimativa)

 *Mensagem*

 -
      Clique aqui para responder →
<https://www.temporadalivre.com/conversas?id_hash=GuoieVQACd8xpu9jqlGN>    

上面是我可以從電子郵件中獲得的部分字符串。 也許,另一部分可以幫助您:

                    <table style="border-spacing: 0; border-collapse: collapse; vertical-align: top; text-align: left; width: 100%; padding: 0;"><tr style="vertical-align: top; text-align: left; padding: 0;" align="left"><th style="color: #0a0a0a; font-family: Helvetica, Arial, sans-serif; font-weight: normal; text-align: left; line-height: 150%; font-size: 16px; margin: 0; padding: 0;" align="left">
                         <div style="color: #daa520;">
                          <b>Dados do Interessado</b><br /></div>
                           <div style="color: #808000;">
                              <b>Vagner Splendor</b><br />
                              <span style="font-family: Helvetica, Arial, sans-serif; font-weight: normal; text-align: left; line-height: 1.3; text-decoration: none; margin: 0; padding: 0; font-size: 0.8em"><i>vagner.splendor01@gmail.com</i></span><br /><br /></div>


                           <div style="color: #daa520;"><b>Período</b><br /></div>
                          <div style="color: #808000;">21 de Dezembro de 2019 a <br>26 de Dezembro de 2019<br>(<b>5 diárias</b>) <br /><br /></div>

                           <div style="color: #daa520;"><b>Hóspedes</b><br /></div>
                          <div style="color: #808000;"> 2 adultos, 1 criança<br /><br /></div>

                           <div style="color: #daa520;"><b>Telefone</b><br /></div>
                          <div style="color: #808000;">44995528255</div><br />

                            <div style="color: #daa520;"><b>País</b><br /></div>
                            <div style="color: #808000;">Brasil<br /></div>
                            <div style="color: #808000; font-size: 14px">(localização por estimativa)<br /><br /></div>

                          <div style="color: #daa520;"><b>Mensagem</b><br /></div>
                          <div style="color: #808000;">-</div>
                        </th>
                      </tr></table></th>
                </tr></tbody></table>

伙計們對我有解決辦法嗎? 我不知道該如何使用正則表達式。

這是沒有結構的,我很肯定我們可能不會以解決這個問題為最終目標,如果可能的話,也許我們應該尋找改變這個問題的方法,但是如果這種選擇不起作用,那么這個例子表達式將是:

<i>(.+?)<\/i>|(<div style="color: #808000;">)[\s\S]*?<b>(.+?)<\/b><br

使用這兩個捕獲組(.+?)捕獲電子郵件和名稱,其余腳本可以編寫腳本。

演示版

測試

$re = '/<i>(.+?)<\/i>|(<div style="color: #808000;">)[\s\S]*?<b>(.+?)<\/b><br/m';
$str = '                    <table style="border-spacing: 0; border-collapse: collapse; vertical-align: top; text-align: left; width: 100%; padding: 0;"><tr style="vertical-align: top; text-align: left; padding: 0;" align="left"><th style="color: #0a0a0a; font-family: Helvetica, Arial, sans-serif; font-weight: normal; text-align: left; line-height: 150%; font-size: 16px; margin: 0; padding: 0;" align="left">
                         <div style="color: #daa520;">
                          <b>Dados do Interessado</b><br /></div>
                           <div style="color: #808000;">
                              <b>Vagner Splendor</b><br />
                              <span style="font-family: Helvetica, Arial, sans-serif; font-weight: normal; text-align: left; line-height: 1.3; text-decoration: none; margin: 0; padding: 0; font-size: 0.8em"><i>vagner.splendor01@gmail.com</i></span><br /><br /></div>


                           <div style="color: #daa520;"><b>Período</b><br /></div>
                          <div style="color: #808000;">21 de Dezembro de 2019 a <br>26 de Dezembro de 2019<br>(<b>5 diárias</b>) <br /><br /></div>

                           <div style="color: #daa520;"><b>Hóspedes</b><br /></div>
                          <div style="color: #808000;"> 2 adultos, 1 criança<br /><br /></div>

                           <div style="color: #daa520;"><b>Telefone</b><br /></div>
                          <div style="color: #808000;">44995528255</div><br />

                            <div style="color: #daa520;"><b>País</b><br /></div>
                            <div style="color: #808000;">Brasil<br /></div>
                            <div style="color: #808000; font-size: 14px">(localização por estimativa)<br /><br /></div>

                          <div style="color: #daa520;"><b>Mensagem</b><br /></div>
                          <div style="color: #808000;">-</div>
                        </th>
                      </tr></table></th>
                </tr></tbody></table>';

preg_match_all($re, $str, $matches, PREG_SET_ORDER, 0);

// Print the entire match result
var_dump($matches);

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM