Sam*_*Sam 7 javascript regex facebook
你知道如果你去facebook.com并输入一个URL到状态更新textarea它会自动被检测到,Facebook将显示该URL /链接数据的一些快照?Facebook甚至不关心您是否输入带或不带协议的URL http://.
我想要复制这种行为.现在我有这个正则表达式:
((?:https?:\/\/)?)((?:[a-zA-Z0-9\-]+\.)+(?:com|org|net|gov|mil|biz|info|mobi|name|aero|jobs|museum|travel|[a-z]{2})(?:[a-z0-9\._\/~%\-\+&\#\?!=\(\)@]*)?(?:#?(?:[w]+)?)?)
Run Code Online (Sandbox Code Playgroud)
我用它来匹配在textarea中输入的URL.但是,它有误报; 它会匹配document.write(foo)哪个显然不是URL.
Facebook似乎没有这个问题.事实上,我可以在Facebook的textarea中键入"yahoo.com",它会将其识别为URL.但如果我键入"example.com",它就不会识别它.所以,这意味着Facebook必须做的不仅仅是正则表达式匹配.或者我错了吗?
总之,我想知道Facebook在做什么,我想知道如何复制它.非常感谢任何想法,技巧或解决方案.
谢谢阅读.