Недавно я написал HTML-дезинфицирующее средство в Java. Он основан на смешанном подходе регулярных выражений и Java-коде. Лично я ненавижу регулярные выражения и его глупость (читаемость, ремонтопригодность и т. Д.), Но если вы уменьшите объем своих приложений, это может соответствовать вашим потребностям. Во всяком случае, мой дезинфицирующее средство использует белый список для тегов HTML и черный список для некоторых атрибутов стиля.
Для вашего удобства я создал игровое поле, чтобы вы могли проверить, соответствует ли код вашим требованиям: игровая площадка и код Java . Ваши отзывы будут оценены.
Существует небольшая статья, описывающая эту работу в моем блоге: http://roberto.open-lab.com
RStudio IDE v1.0 включает функцию «Переименовать в области видимости», которая предназначена для этого:
Эта функция упрощает переименование всех экземпляров Переменная. Инструмент контекстно-зависим; изменение
blockquote>m
наm1
не изменитсяmtcars
наm1tcars
.Я не могу найти документацию для функция. Пример из анимированного GIF работает, хотя, когда я помещаю курсор в первый экземпляр
d
(имя переменной для замены), а затем выберитеCode
->Rename in Scope
. Однако, когда я пытаюсь выполнить те же шаги, но, начиная со второго экземпляра, он не работает. Очевидно, вам нужно начать с того места, где назначена переменная?## Example from animated GIF library(dplyr) library(magrittr) library(ggplot2) d <- mtcars %>% ## Instance 1 filter(cyl > 4) %>% select(hp, mpg) ggplot(data = d, aes(x=hp, y=mpg)) + ## Instance 2 geom_point() + geom_smooth()
На практике все еще есть ошибки, которые мешают работе функции. Например, приведенный ниже пример не работает, если заголовок не удален.
## Header #### example <- 1:10 example[1]