regex
  • r
  • multiline
  • 2015-05-09 8 views 2 likes 
    2

    У меня возникли проблемы с удалением всего после первого появления шаблона в R. Я импортировал данные с paste(readLines(url), collapse="\n").regex, multiline extract in R

    Например, моя строка, \"id=\"fruit_info\">\n<tr class='thead'>\n<th colspan=2>Strawberries</th></table>\n</tr>\n</table>\n<tr class.

    Я хочу удалить все после первого появления </table>. То, что я хочу видеть;

    \"id=\"fruit_info\">\n<tr class='thead'>\n<th colspan=2>Strawberries</th>

    метода Я пытаюсь, кажется, не зарегистрировать первое </table> возникновение и не обеспечивает желаемые результаты.

    Спасибо!

    +0

    Попробуйте 'юг (". *", "", Х)' (если 'x' ваша строка) –

    ответ

    4

    Попробуйте использовать встроенный модификатор (?s), который заставляет точку . охватывать последовательности новой строки.

    sub('(?s)</table>.*', '', x, perl = TRUE) 
    
    +1

    Спасибо, у меня был трудно понять остовный через переводы строк! –

    +0

    Хм, просто 'sub (". * "," ", X)' работал для меня. В каких случаях это провалится? –

    +0

    @DavidArenburg, в случае его наличия последовательностей новой строки =) См. Здесь https://regex101.com/r/cV7nD7/1 – hwnd

    Смежные вопросы