Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/regex/20.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何使用JavaScript正则表达式从Tweet中提取URL?_Javascript_Regex_Twitter - Fatal编程技术网

如何使用JavaScript正则表达式从Tweet中提取URL?

如何使用JavaScript正则表达式从Tweet中提取URL?,javascript,regex,twitter,Javascript,Regex,Twitter,假设我将tweet作为字符串存储在JS变量中 如何使用JavaScript正则表达式从tweet中提取URL 这应该比从字符串中提取URL容易得多,因为: 我将假设任何以http或www开头并以空格(或tweet结尾)结尾的内容都是URL 这将检查两个或三个字母的TLD和子域帐户。这里是我用来从Twitter状态中提取链接的正则表达式之一 链接匹配模式 (?:[^=!:'“/”)(?:https?://www\)[-\w]+(?:\.-\w]+)*(?::\d+)(?:/(?:(?:[-\w\+

假设我将tweet作为字符串存储在JS变量中

如何使用JavaScript正则表达式从tweet中提取URL

这应该比从字符串中提取URL容易得多,因为:

我将假设任何以http或www开头并以空格(或tweet结尾)结尾的内容都是URL


这将检查两个或三个字母的TLD和子域帐户。

这里是我用来从Twitter状态中提取链接的正则表达式之一

链接匹配模式


(?:[^=!:'“/”)(?:https?://www\)[-\w]+(?:\.-\w]+)*(?::\d+)(?:/(?:(?:[-\w\+%-](?:[,.;@:[^\s$])+)*(?:\?:\?[\w\+%&.-)+)*(?:::?::[\w\+%&.-+)+)(?:::\w\\\\\\\\\\\+-]。。。:[-](?:)((?::)|\你只需要一个与URL匹配的JS正则表达式。有很多关于哪个答案的问题。我环顾四周,但没有看到任何好的答案。例如,这些不起作用:我试图检查的字符串是一条Twitter推文。因此,stringToCheck类似于:“查看真棒”或“www.something.com真棒!”!“stringToCheck.match(/\b(([\w-]+://?| www[.])[^\s()]+(?:([\w\d]+)|([^[:punct:][\s]|/))/);//如果stringToCheck是URL,则返回true
var stringToCheck = "http://www.something";

stringToCheck.match(/^http\://[a-zA-Z0-9\-\.]+\.[a-zA-Z]{2,3}(/\S*)?$/); // returns true if stringToCheck is a URL
"entities":{"urls":[{"expanded_url":null,"indices":[27,53],"url":"http:\/\/tinyurl.com\/38wp7nt"}],"hashtags":[],"user_mentions":[]}