Javascript Regex在操作中获取字符串
我需要使用带有javascript的正则表达式获取操作中涉及的元素。我知道这些字符串仅限于包含小写a-z字符、点、下划线字符和数字。我不需要抓住它们周围的元素,比如括号或除法/乘法符号。根据经验,我知道所有这些元素都至少包含一个点。例如:Javascript Regex在操作中获取字符串,javascript,node.js,regex,ecmascript-6,regex-group,Javascript,Node.js,Regex,Ecmascript 6,Regex Group,我需要使用带有javascript的正则表达式获取操作中涉及的元素。我知道这些字符串仅限于包含小写a-z字符、点、下划线字符和数字。我不需要抓住它们周围的元素,比如括号或除法/乘法符号。根据经验,我知道所有这些元素都至少包含一个点。例如: 对于((my.metric.name\u a-bc.test.metric)/(1000000 foo.bar.ab\u cd))*100,它应该返回my.metric.name\u a-bc.test.metric和1000000 foo.bar.ab\u
- 对于
,它应该返回((my.metric.name\u a-bc.test.metric)/(1000000 foo.bar.ab\u cd))*100
和my.metric.name\u a-bc.test.metric
1000000 foo.bar.ab\u cd
- 对于
它应该返回100*另一个.metric.name.here
另一个.metric.name.here
- 对于
它不应该返回任何内容,因为所有元素都不包含点this*-1
谢谢 如果您确定所有字符串都是有效的,您可以使用如下内容:
const字符串=[
“((my.metric.name_a-bc.test.metric)/(1000000 foo.bar.ab_cd))*100”,
'100*另一个.metric.name.here',
'此*-1'
];
常量值=strings.flatMap((str)=>str.match(/(?:[\w-]+\)+[\w-]+/ig))