具有多个特殊字符的Gsub

问题描述 投票:0回答:2

我有以下带有多个特殊字符的字符串,由于逗号,我很难找到第一部分。这是一个示例(只是虚拟数据),我试图在第一个逗号(即体育场)之前获取所有内容。我的问题是,我认为使用 .* 时它总是在字符串中查找该实例的最后一个实例?另外,当使用问号尝试解决这个问题时,我仍然没有运气。我已将我的尝试附加到字符串下方

mystring
"Wembley Stadium, South Way, London, HA9 0WS#100000, 1000000"

my atttempt;
gsub("(.*)\\, .*?", "\\1", mystring)

在这里,我试图继续查找第一个逗号之前的所有内容,然后是逗号之后的所有内容,使用括号表示第一部分是我想要保留的内容

r gsub
2个回答
1
投票

这是你的目标吗?

mystring <- "Wembley Stadium, South Way, London, HA9 0WS#100000, 1000000"
gsub("([^,]+),.*", "\\1", mystring)

"Wembley Stadium"

0
投票

我认为你必须使用

(.*?)
来捕获任何字符,直到第一个逗号。

result <- gsub("^(.*?),.*$", "\\1", mystring)

> print(result)
[1] "Wembley Stadium"
© www.soinside.com 2019 - 2024. All rights reserved.