Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/regex/19.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 如何使用正则表达式提取以下标记?_Javascript_Regex - Fatal编程技术网

Javascript 如何使用正则表达式提取以下标记?

Javascript 如何使用正则表达式提取以下标记?,javascript,regex,Javascript,Regex,例如,假设#表示一个特殊单词,如下所示 我今天到动物园去了一次愉快的旅行。我们玩得很开心。使用正则表达式是否可以提取以下内容 #lovely#zoo#wonderful 使用string.match var str = "I took a #lovely trip to the #zoo today. We had a #wonderful time" str.match(/#\w+/g); // #lovely,#zoo,#wonderful 可能需要根据需要调整正则表达式以包含数字和符

例如,假设#表示一个特殊单词,如下所示

我今天到动物园去了一次愉快的旅行。我们玩得很开心。使用正则表达式是否可以提取以下内容

#lovely#zoo#wonderful

使用
string.match

var str = "I took a #lovely trip to the #zoo today. We had a #wonderful time"
str.match(/#\w+/g); // #lovely,#zoo,#wonderful 
可能需要根据需要调整正则表达式以包含数字和符号

/#[\w\d]+/g
表示字母和数字,
/#\S+/g
表示非空白的内容


编辑:我要补充的是,结尾的
g
意味着它将查找所有匹配项,而不仅仅是第一个匹配项。

这里有正则表达式的答案。然后是
拆分
答案。以下工作:

var s = 'I took a #lovely trip to the #zoo today. We had a #wonderful time.'
var tags = s.split( '#' ).map( function ( str ) {
    return str.split( ' ' )[ 0 ]
} )

// Now, tags[0] is not good, so let's splice it
tags.splice( 0, 1 )

console.log( tags ) // ['lovely', 'zoo', 'wonderful']
所以,是的,它比正则表达式的解决方案要详细一点。不过我觉得它更优雅


你猜对了,我不喜欢正则表达式

\n&*nhj23
也应该匹配吗?你真的觉得这个乱七八糟的东西比四个字符的正则表达式更优雅吗?我不喜欢正则表达式。我不认为这是一团糟。我确实喜欢正则表达式,因为它们是手头工作的合适工具,而现在正是这样的时候。