2016-05-05 17 views
0

Google App Scriptを使用してスプレッドシートに問題があります。Google Appスクリプトで文字列の一致が正しく動作しない

私はスプレッドシートの列と一致するように電子メールを検索する機能を持っています。

問題の対象は、「DONG GUAN SHI CNの新出荷20160504-S-00020」であり、セル値「DONG GUAN」と一致しています。

私のコードスニペット:

thisOffice = range.offset(i, 0).getValue(); // get the value of "DONG GUAN" defined in the spreadsheet 

if(thisOffice != ""){ 
    result = subject.indexOf(thisOffice); 

    if (result > 0){ 

......

プログラムの結果一致しません-1、。これは奇妙なことですが、私はこの件を "Shipment"や "DONG"のような他のパターンと照合しようとしましたが、結果は肯定的です。関数内でのみ "DONG GUAN"を見つけることができません。

対象が「東莞市CNからの新出荷20160505-S-00007」の場合、「東莞市」と一致する可能性があります。

"DONG GUAN"という単語には一致しないようです。

+1

を返された値は、証明(logger.log私たちを見るものをキャッチしてみ)あなたの範囲にはその文字列があります(ヒント:それはありません) –

答えて

1

あなたの文字列が(余分なスペースが含まれているか、スペルミス)正しくない可能性があり、このテストは、35を与える:

function TestMatch() { 

     var thisOffice = 'DONG GUAN'; 
     var subject = "New Shipment 20160504-S-00020 from DONG GUAN SHI CN"; 

     Logger.log(subject.indexOf(thisOffice)); 


    } 

Logger.log(thisOffice);Logger.log(subject);

+0

ありがとう、マックス。私は問題を発見した。要するに、Gmailに表示される件名にはスペースが削除されているため、スクリプトに表示される実際の件名とは異なります。私の場合は、本当の主題は....ドン(ここ2スペース)グアン.... – kenneth171

関連する問題