首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >查找第一个竖线(|)之间的匹配

查找第一个竖线(|)之间的匹配
EN

Stack Overflow用户
提问于 2019-09-30 17:43:13
回答 2查看 37关注 0票数 0

在Google Analytics中,我想用正则表达式过滤所有垂直条带/条形图之间第一次出现的urls是1= |1|。

我在stackoverflow上搜索了类似的问题,并在正则表达式测试器中做了一些测试。但不是我想要的结果。

我测试过了,但它没有测试第一个竖条之间的第一个值。

代码语言:javascript
复制
\|([1]{1})\|

输入

代码语言:javascript
复制
https://www.website.be/results-?e=elec&Form=Home&i2=3-N-H4.225.4|1|2-Y-------Y-----1-1|1|1|1-||||0!A!A!n|0!A!A|||||||undefined!undefined-4|13-0
https://www.website.be/results-?e=elec&Form=Home&i2=3-N-H4.225.4|2|2-Y-------Y-----1-1|2|1|1-||||0!A!A!n|0!A!A|||||||undefined!undefined-4|13-0
https://www.website.be/results-?e=elec&Form=Home&i2=3-N-H4.225.4|abc|2-Y-------Y-----1-1|2|1|1-||||0!A!A!n|0!A!A|||||||undefined!undefined-4|13-0

我想要的结果

代码语言:javascript
复制
https://www.website.be/results-?e=elec&Form=Home&i2=3-N-H4.225.4|1|2-Y-------Y-----1-1|1|1|1-||||0!A!A!n|0!A!A|||||||undefined!undefined-4|13-0
EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2019-09-30 17:46:15

以下正则表达式可能就足够了:

代码语言:javascript
复制
^[^|]*\|1\|.*$

Demo

这将匹配其中第二个以竖线分隔的组件仅具有数字1的所有行。如果您还想断言更具体的内容,例如恰好有19个组件,那么我们可以尝试扩展模式?:

代码语言:javascript
复制
^[^|]*\|1\|(?:[^|]*\|){16}[^|]*$

Demo

票数 1
EN

Stack Overflow用户

发布于 2019-09-30 18:14:47

代码语言:javascript
复制
result = inputs.filter(string => {
    let i = string.indexOf("|");
    return string.charAt(i+1) == "1" && string.charAt(i+2) == "|"
});
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/58165288

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档