Я обрабатываю xhtml с помощью javascript. Я получаю текстовое содержимое для div node путем объединения nodeValue всех дочерних узлов, где nodeType == Node.TEXT_NODE.
Результирующая строка иногда содержит неразрывную космическую сущность. Как заменить это на обычный символ пробела?
Мой div выглядит так...
<div><b>Expires On</b> Sep 30, 2009 06:30 AM</div>
Следующие предложения, найденные в Интернете, не работали:
var cleanText = text.replace(/^\xa0*([^\xa0]*)\xa0*$/g,"");
var cleanText = replaceHtmlEntities(text);
var replaceHtmlEntites = (function() {
var translate_re = /&(nbsp|amp|quot|lt|gt);/g;
var translate = {
"nbsp": " ",
"amp" : "&",
"quot": "\"",
"lt" : "<",
"gt" : ">"
};
return function(s) {
return ( s.replace(translate_re, function(match, entity) {
return translate[entity];
}) );
}
})();
Любые предложения?