Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/439.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 修复从twitter url提取twitter id的正则表达式_Javascript_Regex - Fatal编程技术网

Javascript 修复从twitter url提取twitter id的正则表达式

Javascript 修复从twitter url提取twitter id的正则表达式,javascript,regex,Javascript,Regex,我的所见即所得编辑器有一个bug。 我有一个框,在那里我通过了一个tweet url,我必须提取ID以用嵌入代码替换它 regex: { twitter: /https?:\/\/twitter.com\/[a-zA-Z_]{1,20}\/status\/([0-9]*)/ } if (str.match(this.opts.regex.twitter)) { parsed = str.replace(this.opts.regex.twitter, '<bl

我的所见即所得编辑器有一个bug。 我有一个框,在那里我通过了一个tweet url,我必须提取ID以用嵌入代码替换它

regex: {
        twitter: /https?:\/\/twitter.com\/[a-zA-Z_]{1,20}\/status\/([0-9]*)/
    }

if (str.match(this.opts.regex.twitter)) {
  parsed = str.replace(this.opts.regex.twitter, '<blockquote class="twitter-tweet tw-align-center"><a href="https://twitter.com/x/status/$1">TWEET $1</a></blockquote>');
  return parsed;
   }
如果我使用这个url

https://twitter.com/howard3141/status/1330546000969273347

它不起作用,因为“howard3141”中有一些数字。

因为您需要从URL获取数据,
窗口。位置提供了很好的API来获取价值

下面是它的演示

注意:我正在使用创建一个类似位置的对象,但它应该与
window.location一起使用

var url=新url(“”,'https://twitter.com/howard3141/status/1330546000969273347')

console.log(url.pathname.match(/\/([^\/]*)\/)[1])
请解释什么是合法的twitter用户名。为什么不将任何内容与下一个斜杠匹配<代码>[^/]+
而不是
[a-zA-Z{1,20}
。如果您只想处理数字,请添加
\d
/https?:\/\/twitter.com\/[0-9a-zA-Z\]{1,20}\/status\/([0-9]*)/
将数字作为
[0-9a-zA-Z\//code>添加到您的用户名表达式中。为什么不使用
location.pathName.match(/\/\/(.\/)/[1]
https://twitter.com/howard3141/status/1330546000969273347