我想处理数据框的行,我在每行中都有这个模式
x= RPA4|RP1-117P191
我想要这个
RPA4
管道移除后的所有内容
我尝试使用gsub,试图只获得比赛的第一部分
gsub("^(\\.+)|*$", "\\1", x)
我得到了同样的结果。你能帮帮我吗?
提前致谢
答案 0 :(得分:2)
试试这个:
gsub("\\|.*", "", x)
这会将|
之后的所有内容替换为空字符串。
您使用了匹配字符\\.+
的{{1}}而不是任何字符。
你也使用贪婪的.
,所以你应该使用.+
来捕捉所有内容直到结束。管道符.+?
在正则表达式中表示“或”,因此您需要使用|
进行转义以匹配实际字符。
另一种解决方案(更接近你的尝试)可能是:
\\|