Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/regex/16.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
减少和加速多个regexreplace公式_Regex_Google Sheets - Fatal编程技术网

减少和加速多个regexreplace公式

减少和加速多个regexreplace公式,regex,google-sheets,Regex,Google Sheets,我使用此Loooong公式检查单元格A33中的数据是否具有单元格索引(“类别”!$A$4:$A$30;1;1)-单元格A4中的regexmatch模式-如果为真,则使用单元格索引中的regexreplace模式(“类别”!$B$4:$B$30;1;1)-单元格B4。如果不是-我去用regexmatch模式检查下一个单元格-(“类别”!$A$4:$A$30;2;1)-单元格A5。直到找到正确的模式,或者直到到达最后一个具有模式A30=“^.$”,B30=“”的单元格A30 因为他们的模式非常多样化

我使用此Loooong公式检查单元格A33中的数据是否具有单元格索引(“类别”!$A$4:$A$30;1;1)-单元格A4中的regexmatch模式-如果为真,则使用单元格索引中的regexreplace模式(“类别”!$B$4:$B$30;1;1)-单元格B4。如果不是-我去用regexmatch模式检查下一个单元格-(“类别”!$A$4:$A$30;2;1)-单元格A5。直到找到正确的模式,或者直到到达最后一个具有模式A30=“^.$”,B30=“”的单元格A30 因为他们的模式非常多样化,所以没有必要合并成一个。 现在公式对我来说太慢了,而且很难快速编辑。我如何减少和加速公式

=IF(REGEXMATCH($A33;INDEX('categories'!$A$4:$A$30;1;1))=TRUE;REGEXREPLACE($A33;INDEX('categories'!$A$4:$A$30;1;1);INDEX('categories'!$B$4:$B$30;1;1));
IF(REGEXMATCH($A33;INDEX('categories'!$A$4:$A$30;2;1))=TRUE;REGEXREPLACE($A33;INDEX('categories'!$A$4:$A$30;2;1);INDEX('categories'!$B$4:$B$30;2;1));
IF(REGEXMATCH($A33;INDEX('categories'!$A$4:$A$30;3;1))=TRUE;REGEXREPLACE($A33;INDEX('categories'!$A$4:$A$30;3;1);INDEX('categories'!$B$4:$B$30;3;1));
IF(REGEXMATCH($A33;INDEX('categories'!$A$4:$A$30;4;1))=TRUE;REGEXREPLACE($A33;INDEX('categories'!$A$4:$A$30;4;1);INDEX('categories'!$B$4:$B$30;4;1));
IF(REGEXMATCH($A33;INDEX('categories'!$A$4:$A$30;5;1))=TRUE;REGEXREPLACE($A33;INDEX('categories'!$A$4:$A$30;5;1);INDEX('categories'!$B$4:$B$30;5;1));
IF(REGEXMATCH($A33;INDEX('categories'!$A$4:$A$30;6;1))=TRUE;REGEXREPLACE($A33;INDEX('categories'!$A$4:$A$30;6;1);INDEX('categories'!$B$4:$B$30;6;1));
IF(REGEXMATCH($A33;INDEX('categories'!$A$4:$A$30;7;1))=TRUE;REGEXREPLACE($A33;INDEX('categories'!$A$4:$A$30;7;1);INDEX('categories'!$B$4:$B$30;7;1));
IF(REGEXMATCH($A33;INDEX('categories'!$A$4:$A$30;8;1))=TRUE;REGEXREPLACE($A33;INDEX('categories'!$A$4:$A$30;8;1);INDEX('categories'!$B$4:$B$30;8;1));
IF(REGEXMATCH($A33;INDEX('categories'!$A$4:$A$30;9;1))=TRUE;REGEXREPLACE($A33;INDEX('categories'!$A$4:$A$30;9;1);INDEX('categories'!$B$4:$B$30;9;1));
IF(REGEXMATCH($A33;INDEX('categories'!$A$4:$A$30;10;1))=TRUE;REGEXREPLACE($A33;INDEX('categories'!$A$4:$A$30;10;1);INDEX('categories'!$B$4:$B$30;10;1));
IF(REGEXMATCH($A33;INDEX('categories'!$A$4:$A$30;11;1))=TRUE;REGEXREPLACE($A33;INDEX('categories'!$A$4:$A$30;11;1);INDEX('categories'!$B$4:$B$30;11;1));
IF(REGEXMATCH($A33;INDEX('categories'!$A$4:$A$30;12;1))=TRUE;REGEXREPLACE($A33;INDEX('categories'!$A$4:$A$30;12;1);INDEX('categories'!$B$4:$B$30;12;1));
IF(REGEXMATCH($A33;INDEX('categories'!$A$4:$A$30;13;1))=TRUE;REGEXREPLACE($A33;INDEX('categories'!$A$4:$A$30;13;1);INDEX('categories'!$B$4:$B$30;13;1));
IF(REGEXMATCH($A33;INDEX('categories'!$A$4:$A$30;14;1))=TRUE;REGEXREPLACE($A33;INDEX('categories'!$A$4:$A$30;14;1);INDEX('categories'!$B$4:$B$30;14;1));
IF(REGEXMATCH($A33;INDEX('categories'!$A$4:$A$30;15;1))=TRUE;REGEXREPLACE($A33;INDEX('categories'!$A$4:$A$30;15;1);INDEX('categories'!$B$4:$B$30;15;1));
IF(REGEXMATCH($A33;INDEX('categories'!$A$4:$A$30;16;1))=TRUE;REGEXREPLACE($A33;INDEX('categories'!$A$4:$A$30;16;1);INDEX('categories'!$B$4:$B$30;16;1));
IF(REGEXMATCH($A33;INDEX('categories'!$A$4:$A$30;17;1))=TRUE;REGEXREPLACE($A33;INDEX('categories'!$A$4:$A$30;17;1);INDEX('categories'!$B$4:$B$30;17;1));
IF(REGEXMATCH($A33;INDEX('categories'!$A$4:$A$30;18;1))=TRUE;REGEXREPLACE($A33;INDEX('categories'!$A$4:$A$30;18;1);INDEX('categories'!$B$4:$B$30;18;1));
IF(REGEXMATCH($A33;INDEX('categories'!$A$4:$A$30;19;1))=TRUE;REGEXREPLACE($A33;INDEX('categories'!$A$4:$A$30;19;1);INDEX('categories'!$B$4:$B$30;19;1));
IF(REGEXMATCH($A33;INDEX('categories'!$A$4:$A$30;20;1))=TRUE;REGEXREPLACE($A33;INDEX('categories'!$A$4:$A$30;20;1);INDEX('categories'!$B$4:$B$30;20;1));
IF(REGEXMATCH($A33;INDEX('categories'!$A$4:$A$30;21;1))=TRUE;REGEXREPLACE($A33;INDEX('categories'!$A$4:$A$30;21;1);INDEX('categories'!$B$4:$B$30;21;1));
IF(REGEXMATCH($A33;INDEX('categories'!$A$4:$A$30;22;1))=TRUE;REGEXREPLACE($A33;INDEX('categories'!$A$4:$A$30;22;1);INDEX('categories'!$B$4:$B$30;22;1));))))))))))))))))))))))

好的,已经有了gogle论坛的答案,谢谢Tackky:

=index(filter(regexreplace($C2;$A$2:$A$19;$B$2:$B$19);regexmatch($C2;$A$2:$A$19));1)