Доброго всем дня! Столкнулся со следующей проблемой: Мне необходимо заменить спец символы. Делаю сейчас это следующим способом :
this.replaceStandardHtmlEntities = (text) => {
let regular = /( {2}|&|'|<|>|\\n)/g,
translate = {
' ': ' ',
'&': '&',
'\'': '"',
'<': '<',
'>': '>',
'\\n': '<br>'
};
return (text.replace(regular, (match, entity) => {
return translate[entity];
}));
};
Но моя задача немного усложнилась, мне необходимо игнорировать 'a' тэг, к примеру:
<a href = http://stackoverflow.com/questions/19006441/html-regex-ignore-tags>stackoverflow.com/questions/19006441/html-regex-ignore-tags</a>
Содержимое тэга, т.е (stackoverflow.com/questions/19006441/html-regex-ignore-tags) не должно игнорироваться. Регулярка на матч тэга есть
(?!<\/?a+((\s+\w+(\s*=\s*(?:\".*?"|'.*?'|[^'\">\s]+))?)+\s*|\s*)\/?>)
а вот совместить эти вещи, увы не получается.
Буду вам очень благодарен за любую помощь, т.к бьюсь с этой проблемой целый день =(