如何使用正则表达式提取以下标记
How could I use regular expressions to extract the following markup?
例如,假设#表示一个特殊单词,如下所示
我今天 #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
意味着它将找到所有匹配项,而不仅仅是第一个匹配项。
有正则表达式答案。然后,有split
答案。以下作品:
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']
所以,是的,它比正则表达式解决方案更详细一些。不过我觉得它更优雅。
PS:你猜对了,我不喜欢正则表达式!
相关文章:
- 如何告诉MathJax对下标使用替代语法
- 如何在内联依赖项并将图像转换为dataURI的情况下完全提取网页
- 返回JSON中的下标
- HTML 输入中的上标和下标
- Javascript,为带有下标和上标的文本字段创建模板
- 如何找到下标字母表的unicode
- 如何在没有html标记的情况下仅提取文本
- Javascript-将字符串中的所有数字更改为下标
- 如何使用下划线提取基于id的对象
- 有没有一般的下标函数
- 如何JSON.解析并忽略数组下标
- 数组的下标是否被移到了正确的位置向左还是向右
- 从js对象渲染下标到HTML
- 在Javascript中给字符串下标
- Javascript性能考虑.点运算符比下标符号快
- 对数组的奇数下标处的所有数字进行平方
- 在Javascript中递增一个字符串下标数字
- 使用jquery将数据加载到下标按钮中
- 为什么子字符串不处理负下标
- 元素的-1下标是什么意思?