Мы можем использовать lead
из dplyr
, предполагая, что season
упорядочено, как показано в примере
library(dplyr)
df1 %>%
group_by(url) %>%
mutate(salary = if (n() > 1) lead(salary) else salary)
# season url salary
# <fct> <fct> <int>
#1 2016-17 /players/a/abrinal01.html 5725000
#2 2017-18 /players/a/abrinal01.html NA
#3 2008-09 /players/a/ackeral01.html 711517
#4 2012-13 /players/a/acyqu01.html 788872
#5 2013-14 /players/a/acyqu01.html 915243
#6 2014-15 /players/a/acyqu01.html NA
Можно улучшить Объект RegExp с функцией, которая делает выход специального символа для Вас:
RegExp.escape = function(str)
{
var specials = /[.*+?|()\[\]{}\\$^]/g; // .*+?|()[]{}\$^
return str.replace(specials, "\\$&");
}
Затем Вы смогли бы использовать то, что другие предложили без любых забот:
function highlightWordsNoCase(line, word)
{
var regex = new RegExp("(" + RegExp.escape(word) + ")", "gi");
return line.replace(regex, "<b>$1</b>");
}