2016-04-01 3 views
2

これは非常に簡単かもしれませんし、私はJavaScriptの処理を希望しているほど経験がないので、文字列から電子メールを削除したい、ログインやサインアップ中にメッセージが表示されるJavaScript(GTM)を使用して文字列から電子メールを削除する方法

私のエラーは次のようになります。

次の電子メール[email protected] 無効なデータ は、現在のセッションに メールを閉じる必要があり、既に ...

を登録だから、アイデアはに間違っていています最初のエラーから電子メールを削除し、電子メールが存在しない場合は、他のエラーをそのまま残します。

文字列に電子メールがあるが、それを動作させる方法が見つからない場合、このコードが検出されました "([^。@ \ s] +)(\。[^​​。@ \ s]

私はちょうどGoogleアナリティクスにデータを送信したい、私は避けようとしている(+個人データを送信する。

ありがとうございます。

+0

別のオプションは、その特定のエラーメッセージまたはエラーイベントによってトリガーされるGAにイベントを送信することです。こうすることで、Javascriptで正規表現を使用して文字列を削除する必要がなくなり、データ(イベントカテゴリ、アクション、ラベル)を自分でカスタマイズすることができ、PIIの問題を避けることができます。 – nyuen

答えて

2

"([^[email protected]\s]+)(\.[^[email protected]\s]+)*@([^[email protected]\s]+\.)+([^[email protected]\s]+)"は正規表現です。それは電子メールのように見えるすべてにマッチします。 replace()search() JavaScript関数で使用するには、式を2つの/で区切る必要があります。

例:JavaScriptの正規表現について

var myString = "Hello, my email is [email protected]"; 

// Check if there is an email 
if(myString.search(/([^[email protected]\s]+)(\.[^[email protected]\s]+)*@([^[email protected]\s]+\.)+([^[email protected]\s]+)/) !== -1){ 
    console.log("There is an email !"); 
    // Remove it... 
    myString = myString.replace(/([^[email protected]\s]+)(\.[^[email protected]\s]+)*@([^[email protected]\s]+\.)+([^[email protected]\s]+)/,""); 
    console.log(myString); // Hello, my email is 
} 

良いチュートリアル:http://www.w3schools.com/js/js_regexp.asp

+0

ありがとう、文字列の作業は本当によく、ハイフンとアンダースコアも含まれています。私は今それを公表し、それがどのように進むのか見ています。 –