Javascript 如何使用Angular2中的正则表达式制作管道?
我试图制作一个管道,将输入的文本与Regex匹配,然后显示逻辑。如果找不到,它不应该做任何事情 因此,正则表达式应该匹配m或multiple:n2 abc之类的内容,然后显示逻辑。假设关键字是: m n 2 abc-只有这些,而不是a-z或a-z 到目前为止我所做的:Javascript 如何使用Angular2中的正则表达式制作管道?,javascript,regex,angular,angular2-pipe,Javascript,Regex,Angular,Angular2 Pipe,我试图制作一个管道,将输入的文本与Regex匹配,然后显示逻辑。如果找不到,它不应该做任何事情 因此,正则表达式应该匹配m或multiple:n2 abc之类的内容,然后显示逻辑。假设关键字是: m n 2 abc-只有这些,而不是a-z或a-z 到目前为止我所做的: import {Pipe, PipeTransform} from '@angular/core'; @Pipe({name:'regMatch'}) export class RegMatch implements PipeT
import {Pipe, PipeTransform} from '@angular/core';
@Pipe({name:'regMatch'})
export class RegMatch implements PipeTransform {
transform(value: string, arg?: any): any {
//CODE HERE
}
}
我该怎么做
谢谢
编辑:如果找到匹配项,则应使用Popover显示图像:
如果没有,请保持原样。首先我必须说,我对angular2管道一无所知 但是,如果您只是在寻找一种JS方法来循环处理匹配项,那么可以使用以下正则表达式:\.+?\ 这可以按如下方式使用:
var targetText = "(word1) other words (word2)";
var reg = new RegExp(/\((.+?)\)/);
var result;
while((result = reg.exec(targetText)) !== null) {
var matchedContents = result[1]; //this will be the inside of each set of ()
console.log(matchedContents);
//Outputs:
//word1
//word2
//DO Something...
}
同样,我不确定管道以及如何将其专门用于您的案例,但我希望它能有所帮助。您能解释一下显示逻辑的含义吗?另外,添加预期的输出。给我一点时间,我会编辑。好了,伙计,编辑: