Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/regex/16.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?_Javascript_Regex_Twitter - Fatal编程技术网

如何使用此JavaScript返回带有特定哈希标记的tweet?

如何使用此JavaScript返回带有特定哈希标记的tweet?,javascript,regex,twitter,Javascript,Regex,Twitter,如果此JS返回以@符号开头的tweet,如何使用特定的哈希标记或其中的单词返回tweet 我尝试的一切都会破坏它!它源于这个JS: 首先,让我们分析一下正则表达式,看看它是如何工作的 /^@\w+/-开头和结尾的斜杠(/)只是告诉JavaScript这是一个正则表达式的分隔符 ^-匹配字符串的开头。 @-匹配文字@符号。 \w-匹配任何字母数字字符,包括下划线(缩写为[a-zA-Z0-9.)。 +-是{1,}的缩写。匹配上一个字符或表达式(\w)一次或多次 这就是如何匹配以@符号开头的tweet

如果此JS返回以
@
符号开头的tweet,如何使用特定的哈希标记或其中的单词返回tweet

我尝试的一切都会破坏它!它源于这个JS:


首先,让我们分析一下正则表达式,看看它是如何工作的

/^@\w+/
-开头和结尾的斜杠(
/
)只是告诉JavaScript这是一个正则表达式的分隔符

^
-匹配字符串的开头。
@
-匹配文字@符号。
\w
-匹配任何字母数字字符,包括下划线(缩写为
[a-zA-Z0-9.
)。
+
-是
{1,}
的缩写。匹配上一个字符或表达式(
\w
)一次或多次

这就是如何匹配以
@
符号开头的tweet。要匹配包含特定标签的tweet,可以将上面的正则表达式替换为要匹配的特定标签


例如,
/#StackOverflow/.test(t.tweet_raw_text)
将匹配包含确切标签的tweet
#StackOverflow
。但这是一种区分大小写的模式,因此它与hashtag
#stackoverflow
不匹配。要使JavaScript正则表达式不区分大小写,只需在结束delimeter后添加
i
修饰符,如下所示:
/#StackOverflow/i

感谢您的上述回复-这是一堂关于reg表达式的好课

我还解决了这个代码的问题:

filter: function(t){ return  /^@\w+/.test(t.tweet_raw_text); },

如果你想得到快速帮助,请将你自己的最佳尝试张贴出来,以便人们能帮助你修复它。“我尝试的一切都会破坏它!”你到底尝试了什么?您必须测试标记是否在文本中,这非常简单,并且已经在这里被询问过:很明显,这是这里的这一部分,但无法理解正则表达式:/^@\w我想我现在也关闭了我未回答的问题查看我在上一篇评论中发布的链接。这不一定需要正则表达式。您可以执行
str.indexOf(“#”+标记名)
filter: function(t){ if (t.tweet_raw_text.indexOf("#EF1") !== -1; },