将文字转换为data.table::tstrsplit
的列时,我想在所有未加入双引号.
的句点"
上拆分。这项任务归结为这种情况:
test_string <- c('foo.bar.baz', 'fizz.buzz."ba.zz"')
strsplit(test_string, "...", perl = TRUE)
导致:
[[1]]
[1] "foo" "bar" "baz"
[[2]]
[1] "fizz" "buzz" "ba.zz"
编辑:基于链接的副本,我能够得到这个:
R> strsplit(test_string, '\\.(?=(?:[^\\"]*\\"[^\\"]*\\")*[^\\"]*$)', perl = TRUE)
[[1]]
[1] "foo" "bar" "baz"
[[2]]
[1] "fizz" "buzz" "\"ba.zz\""