2014-10-21 2 views
3

Som Я новичок в R. Я изучал эту концепцию формирования регулярных выражений.Формирование и использование регулярных выражений в R

i.e примерно "(\\2.\\3)". Что это? Я имею в виду, что представляют эти цифры и обозначения? Может ли кто-нибудь объяснить на очень непрофессиональном языке, что это значит? Или что-то вроде этого, (\2.\4)(\2.\4), что это значит? Спасибо за любую помощь!

ответ

3

Их называют backreferences, которые напоминают, что соответствовало группе захвата. A capturing group можно создать, поместив символы в группу круглых скобок (). Обратная ссылка указана как обратная косая черта (\) в R, две обратные косые черты (\\); за которым следует цифра , указывающая номер группы для вызова.

Ниже приведен пример замены, используя обратные ссылки, чтобы вспомнить, что было подобрано, захватив группу #2 и #3 ...

x <- 'foo bar baz quz' 
sub('(\\S+) (\\S+) (\\S+) (\\S+)', '(\\2.\\3)', x) 
# [1] "(bar.baz)" 

Примечание: Открытие и закрытие скобка в замене вместе с точкой являются дословным персонажи.

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