我有一个像AirBnB这样的预订网站,我的用户可以在我的网站之间相互交换消息。
我想阻止我的用户在这些消息中交换电话号码和电子邮件地址。
我使用的方式是一起查找4个数字或@,然后在发送消息之前将其删除。
请,有更好的方法吗?
谢谢。
答案 0 :(得分:2)
啊,电话号码检测。
简短答案:Fairly easily
更长的答案:否
电话号码检测的问题在于,有很多方法表达电话号码。
one eight hundred one hundred and eleven twenty two twenty two
1 one 800 1one1 two222
+ 64 3 477 4000
长话短说,语言困难,用户精明。请查看以下内容,以获取关于此类数据输入/输出的复杂性的一些乐趣:https://imgur.com/gallery/r102w
祝你好运。
答案 1 :(得分:0)
使用正则表达式。
var phoneRegex = /[\+]?[(]?[0-9]{3}[)]?[-\s\.]?[0-9]{3}[-\s\.]?[0-9]{4,6}/im;
var emailRegex = /(([^<>()\[\]\\.,;:\s@"]+(\.[^<>()\[\]\\.,;:\s@"]+)*)|(".+"))@((\[[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\])|(([a-zA-Z\-0-9]+\.)+[a-zA-Z]{2,}))/;
if(phoneRegex.test(content) || emailRegex.test(content))
blockUser(); // do whatever is necessary to block the user