删除文本字符串后的所有文本

时间:2018-08-15 17:02:08

标签: r excel replace character

我有一个R数据框和一个Excel电子表格(从数据框创建),其中有NCAA篮球逐项比赛数据。列中可能有一个字符串

“韦斯利·哈里斯(Wesley Harris)跳投三分。杰文·卡特(Jevon Carter助攻)。”

我想删除短语“ Assisted by”之后的所有内容,但是在R和Excel中我都没有找到执行此操作的方法。请注意,并非每个条目都有短语“ Assisted”,因此我也必须考虑这一点。

3 个答案:

答案 0 :(得分:2)

这是使用Excel方程LEFTSEARCH

的解决方案
  

A1 = LEFT(A1,SEARCH(“ Assisted”,A1&“ Assisted”)-1)


enter image description here

答案 1 :(得分:0)

在R中,我们可以使用regexpr来查找字符串中“ Assisted by”所在的字符编号。然后,我们可以将子字符串从字符1提取到“ Assisted by”开始之前的字符:

mystr <- "Wesley Harris made Three Point Jumper. Assisted by Jevon Carter."

A <- regexpr("Assisted by", mystr)[[1]]
substr(mystr, start=1, stop=A-1)

答案 2 :(得分:0)

如果您不反对使用vba在excel中对其进行后处理,将字符串转换成数组并使用“ Assisted”作为定界符并像这样首先获得第一部分(假设字符串很简单)在A1中)

Cells(1,1)=Split(Cells(1,1), "Assisted")(0)

如果您需要对A列中的每个单元格执行此操作,则可以使用

with Worksheets("Sheet1")
for i=1 to .UsedRange.Rows.Count
    .Cells(i,1)=Split(.Cells(i,1), "Assisted")(0)
next i
end with