У меня есть два файла, file1 содержит подстроки файла2. Я хочу сопоставить file1 с файлом 2 и вывести часть, которая находится слева от совпадения, а не сама совпадение. Я также хотел бы знать, как выводить то, что находится справа от матча, а не сам матч. Вот часть моих данных (эти строки этого, вероятно, не совпадают, просто пример данных:Вывести левую или правую часть совпадающей строки
file1
ACUGUACAGGCCACUGCCUUGC
CUGCGCAAGCUACUGCCUUGCU
UGGAAUGUAAAGAAGUAUGUAU
CGAAUCAUUAUUUGCUGCUCUA
AUCACAUUGCCAGGGAUUACC
UUCACAGUGGCUAAGUUCUGC
file2
CCAGGCUGAGGUAGUAGUUUGUACAGUUUGAGGGUCUAUGAUACCACCCGGUACAGGAGAUAACUGUACAGGCCACUGCCUUGCCAGG
CUGGCUGAGGUAGUAGUUUGUGCUGUUGGUCGGGUUGUGACAUUGCCCGCUGUGGAGAUAACUGCGCAAGCUACUGCCUUGCUAG
GCUUGGGACACAUACUUCUUUAUAUGCCCAUAUGAACCUGCUAAGCUAUGGAAUGUAAAGAAGUAUGUAUUUCAGGC
CUGUAGCAGCACAUCAUGGUUUACAUACUACAGUCAAGAUGCGAAUCAUUAUUUGCUGCUCUAG
GGCUGCUUGGGUUCCUGGCAUGCUGAUUUGUGACUUGAGAUUAAAAUCACAUUGCCAGGGAUUACCACGCAACC
пример:
file1:
GCUGUGGAGAUAACUGCGC
file2
CUGGCUGAGGUAGUAGUUUGUGCUGUUGGUCGGGUUGUGACAUUGCCCGCUGUGGAGAUAACUGCGCAAGC
выход
CUGGCUGAGGUAGUAGUUUGUGCUGUUGGUCGGGUUGUGACAUUGCCC
@ GracieD: Каждый элемент вывода идентичен.Попробуйте: ll = lapply (a, function (i) sapply (strsplit (b, a [i]), "[[", 1)); для (i in 2: length (ll)) print (идентичный (ll [[i]], ll [[i-1]])) – rnso
@rnso спасибо. обновлено. – GracieD