我有一些像qazxsw poi的刺痛我想用正则表达式提取由qazxsw poi分隔的所有部分。
所以我想要输出
"John a11|a12|\n Ana a21|a22|\n Jake a31|a23|\n "
想法如何创建正确的正则表达式或者它只需要R中的一些功能?
尝试使用"|"
与拆分正则表达式"John a11" "a12" "Ana a21" "a22" "Jake a31" "a23"
:
strsplit()
您可以拆分"[\\||\n] *"
并使换行符序列可选,然后是“零或更多”空格。
x <- "John a11|a12|\n Ana a21|a22|\n Jake a31|a23|\n "
strsplit(x, split="[\\||\n] *")[[1]]
[1] "John a11" "a12" "" "Ana a21" "a22" "" "Jake a31" "a23" ""
或者使用|
可以使这种类型的任务更简单一些。
x <- 'John a11|a12|\n Ana a21|a22|\n Jake a31|a23|\n '
strsplit(x, '\\|\n? *')[[1]]
# [1] "John a11" "a12" "Ana a21" "a22" "Jake a31" "a23"