R: & ldquo; & rdquo; регулярное выражение не распознает шаблоны при использовании с «positive lookbehind» [duplicate]

prototype является свойством объекта Function. Это прототип объектов, построенных этой функцией.

__proto__ является внутренним свойством объекта, указывая на его прототип. Существующие стандарты обеспечивают эквивалентный метод Object.getPrototypeOf(O), хотя фактический стандарт __proto__ выполняется быстрее.

Вы можете найти отношения instanceof, сравнив функцию prototype функции с цепочкой __proto__ объекта и вы можете разбить эти отношения, изменив prototype.

function Point(x, y) {
    this.x = x;
    this.y = y;
}

var myPoint = new Point();

// the following are all true
myPoint.__proto__ == Point.prototype
myPoint.__proto__.__proto__ == Object.prototype
myPoint instanceof Point;
myPoint instanceof Object;

Здесь Point является функцией-конструктором, он строит объект (структуру данных) процедурно. myPoint - объект, построенный с помощью Point(), поэтому Point.prototype сохраняется в это время myPoint.__proto__.

14
задан Joshua Ulrich 11 April 2012 в 20:45
поделиться

1 ответ

Попробуйте gregexpr с perl=TRUE и используйте регулярные выражения perl с прогнозными утверждениями (см. ?regex):

gregexpr("(?=CC)","CCCGTGCC",perl=TRUE)
[[1]]
[1] 1 2 7
attr(,"match.length")
[1] 0 0 0
26
ответ дан Joshua Ulrich 21 August 2018 в 13:49
поделиться
  • 1
    очень элегантный! – Ramnath 24 October 2011 в 18:25
  • 2
    Действительно, умное использование! – James 24 October 2011 в 18:28
  • 3
    Мех, я застрял, но не думал «смотреть вперед». Интересно, почему шаблон = "CC" не работает ... – Roman Luštrik 24 October 2011 в 18:39
  • 4
    @ RomanLuštrik: см. Комментарий Джеймса к OP. Если совпадение найдено, оно удаляется из оставшейся части искомой строки. Обратите внимание, что "match.length" равно нулю (это было бы 2, если pattern="CC"). – Joshua Ulrich 24 October 2011 в 18:48
  • 5
    +1 для поясняющего комментария о "match.length" прогнозных утверждений. Я никогда не думал об этом. – Josh O'Brien 24 October 2011 в 19:34
Другие вопросы по тегам:

Похожие вопросы: