正则表达式的问题
来源:4-14 歌词数据解析
慕虎9125073
2020-01-10
match(/[(\d{2,}):(\d{2})(?:.(\d{2,3}))?]/g)里的正则表达式不能理解?为什么前面的[,后面就不用加 \ 转义符号,?匹配整个式子的话应该是/([(\d{2,}):(\d{2})(?:.(\d{2,3}))])?/g)的吧? ?:.是什么意思获取:或者获取.吗,那不是应该(?:.|:)吗?
写回答
1回答
-
?: 表示避免保存括号内的匹配结果,也可以理解成不记录子表达式的匹配结果。这里只要输出下得到的歌词格式就会知道,不需要去匹配冒号,冒号和前面的问号是一个语法。
写多了会发现,对于同样的需求,不同的人写的正则可能是不相同的,分析的角度可能不一样。
122021-10-07
相似问题