正規表現で非表示の連絡先を検索する

レギュラーには多くの資料があり、バリデータや検索などで簡単に使用できる既製のテンプレートがたくさんあります。 通常、これらは、入力されたメールアドレスなどを検証するための正しい常連です。 しかし、最近、「間違った」データ(ユーザーが連絡先を書くことができないことを知っているが、誤った方法で書く場合)、特に電子メールと電話を見つけるタスクがありました。

タスクは次のとおりです。「 ユーザーがサイトで電話番号とメールアドレスを公開できないようにします 。」

残念ながら、インターネットで既製のソリューション見つけるためにグーグルを見つけることができなかったので、これらの目的のために書いたいくつかの正規表現を共有したいと思います。



電話番号:
^\s[-_\[\]0-9 ()]{10,20}^
メールアドレス:
^[-.\w]+(?:[-_( \[])*(?:@|at)(?:[-_) \]])*(?:[-\w])+(?:[-_ \[(]*)(?:[.]|dot)(?:[-_ \])]*)(?:[\w.]*)^

これらの定期的な日付は、必要なサイトで隠された連絡先情報を見つけるための私のニーズをすべてカバーしていました。

ここに私が出会った住所の良い例があります:
メールの例

このサイトはロシア語ではないことを明確にします。そのため、表現は英語圏のユーザーを対象にしています。

PS
PHPを愛する人のために、次のようなヘルパーを作成できます。

 if (!function_exists('getPhonePattern')) { function getPhonePattern() { return '^\s[-_\[\]0-9 ()]{10,20}^'; } } if (!function_exists('getEmailPattern')) { function getEmailPattern() { return '^[-.\w]+(?:[-_( \[])*(?:@|at)(?:[-_) \]])*(?:[-\w])+(?:[-_ \[(]*)(?:[.]|dot)(?:[-_ \])]*)(?:[\w.]*)^'; } } if (!function_exists('removeContacts')) { function removeContacts($data) { $data = preg_replace(getEmailPattern(), ' *** hidden email *** ', $data); $data = preg_replace(getPhonePattern(), ' *** hidden phone *** ', $data); return $data; } } 
if (!function_exists('getPhonePattern')) { function getPhonePattern() { return '^\s[-_\[\]0-9 ()]{10,20}^'; } } if (!function_exists('getEmailPattern')) { function getEmailPattern() { return '^[-.\w]+(?:[-_( \[])*(?:@|at)(?:[-_) \]])*(?:[-\w])+(?:[-_ \[(]*)(?:[.]|dot)(?:[-_ \])]*)(?:[\w.]*)^'; } } if (!function_exists('removeContacts')) { function removeContacts($data) { $data = preg_replace(getEmailPattern(), ' *** hidden email *** ', $data); $data = preg_replace(getPhonePattern(), ' *** hidden phone *** ', $data); return $data; } }


これらの常連を自分で補足できることを忘れないでください。

Source: https://habr.com/ru/post/J81220/


All Articles