首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
社区首页 >问答首页 >正则表达式分裂

正则表达式分裂
EN

Stack Overflow用户
提问于 2016-07-14 18:52:18
回答 3查看 66关注 0票数 1

我有一个字符串,如下所述。我一直试图使用正则表达式进行拆分,并在论坛中找到(^|+),它将匹配除(管道)之外的所有内容,但是我希望使用正则表达式将其分解为两个,但无法做到这一点。因此,一个表达式是(xyz),它从GA中提取到管道字符之前的所有内容,第二个表达式是(abc),它将在第一个管道之后提取任何内容。

GA1.2.1127630839.1468526914|3847EFF358ABEC90-01A39B0290BAC298

EN

回答 3

Stack Overflow用户

回答已采纳

发布于 2016-07-14 21:53:33

第一个是^[^|]+,第二个是[^|]+$

这样做的目的是使用带有锚的否定字符类。^将匹配字符串开始,$将匹配字符串结束。

这两种模式没有外观,几乎可以满足任何正则表达式的口味。

票数 2
EN

Stack Overflow用户

发布于 2016-07-14 19:04:53

猜流行语言。:-)

Python:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
'GA1.2.1127630839.1468526914|3847EFF358ABEC90-01A39B0290BAC298'.split('|')

JavaScript:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
'GA1.2.1127630839.1468526914|3847EFF358ABEC90-01A39B0290BAC298'.split('|')

PHP:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
explode('|', 'GA1.2.1127630839.1468526914|3847EFF358ABEC90-01A39B0290BAC298')

去:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
strings.Split("GA1.2.1127630839.1468526914|3847EFF358ABEC90-01A39B0290BAC298", "|")

红宝石:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
'GA1.2.1127630839.1468526914|3847EFF358ABEC90-01A39B0290BAC298'.split('|')
票数 1
EN

Stack Overflow用户

发布于 2016-07-14 19:15:29

编辑

澄清后,我明白你的要求。在使用regex101.com时,我发现这两个表达式应该给您想要的东西:

^.*(?=\|)获得第一部分,并且

(?<=\|).*获得第二个。

当您单击该链接时,您可以看到它正在运行。

先前的回答

@smarx的答案揭示了正则表达式的许多替代方法。

但这方面的一些东西应该可以做到:

R

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
myString <- 'GA1.2.1127630839.1468526914|3847EFF358ABEC90-01A39B0290BAC298'
part1 <- sub(pattern = "(.*)\\|(.*)", x = myString, replacement = "\\1")
part2 <- sub(pattern = "(.*)\\|(.*)", x = myString, replacement = "\\2")

R需要加倍所有反斜杠,而其他一些语言则不需要。

Python

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
import re

myString = 'GA1.2.1127630839.1468526914|3847EFF358ABEC90-01A39B0290BAC298'
part1 = re.sub(pattern="(.*)\|(.*)", repl = "\\1", string = myString)
part1 = re.sub(pattern="(.*)\|(.*)", repl = "\\2", string = myString)
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/38387164

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档
查看详情【社区公告】 技术创作特训营有奖征文