gpt4 book ai didi

特殊字符的正则表达式 "until but not including"(使用 R)

转载 作者:行者123 更新时间:2023-12-01 11:33:17 24 4
gpt4 key购买 nike

我有一个像这样的数据框(RNA.patients):

PAK1|5808
PAK2|10289
PALM2|114299
PALM2-AKAP2|445815

我想抓取“|”之前的所有内容,所以我找到了这个正则表达式:

regmatches(RNA.patients[i,1], regexpr("^[^[:punct:]]*", RNA.patients[i,1]))

但对于像“PALM2-AKAP2”这样的情况,正则表达式停在“-”处。有人可以帮帮我吗?

最佳答案

与其对正则表达式大惊小怪(除非确实有必要),只需在列上使用 read.table 将其一分为二并从那里提取相关列:

Text <- c("PAK1|5808", "PAK2|10289", "PALM2|114299", "PALM2-AKAP2|445815")
read.table(text = Text, sep = "|")
# V1 V2
# 1 PAK1 5808
# 2 PAK2 10289
# 3 PALM2 114299
# 4 PALM2-AKAP2 445815

或者,您可以使用 strsplit:

sapply(strsplit(Text, "[|]"), `[[`, 1)
# [1] "PAK1" "PAK2" "PALM2" "PALM2-AKAP2"
sapply(strsplit(Text, "[|]"), `[[`, 2)
# [1] "5808" "10289" "114299" "445815"

关于特殊字符的正则表达式 "until but not including"(使用 R),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20127549/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com