Регулярное выражение с использованием языка программирования R - PullRequest
0 голосов
/ 21 апреля 2020
String<- "46,XX,t(1;19)(p32;q13.3),t(6;9)(p22;q34),del(32)t(12;16)(p12;q21)[cp20]"

Значение, которое я хочу извлечь, равно t(1;19)(p32;q13.3), t(6;9)(p22;q34), t(12;16)(p12;q21)

Регулярное выражение, которое я использую

ABC<-str_extract(String, regex("t.{1,16}"))

output I Get: t(1;19)(p32;q13.3

Я знаю, что мой код неполный, но я не могу найти способ извлечь эту информацию.

Заранее спасибо

1 Ответ

1 голос
/ 21 апреля 2020

Предполагая, что String:

String<- "46,XX,t(1;19)(p32;q13.3),t(6;9)(p22;q34),del(32)t(12;16)(p12;q21)[cp20]"

Мы можем использовать str_extract_all как:

stringr::str_extract_all(String, "t\\(.*?\\)\\(.*?\\)")[[1]]
#[1] "t(1;19)(p32;q13.3)" "t(6;9)(p22;q34)"    "t(12;16)(p12;q21)" 

Возвращает "t", за которым следуют все в круглых скобках (()), затем все в другой круглой скобке рядом с ним.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...