改行を含まないテキストノードを取得するXPath
'//text()[string-length(normalize-space()) > 0]'
これで勝つる。
<追記>
誰がタイトル取ってこいと...俺か、
欲しいのは、bodyタグ以下だけですよね〜
'/html/body//text()[string-length(normalize-space()) > 0]'
今度こそ
</追記>
normalize-spaceで空白文字削って、長さ見れば改行だけのテキストは長さ0になりヒットしない。
例えばjavascriptで
var nodes = 上記XPathで取れたテキストノードの配列; for(var i = 0, l = nodes.length; i < l; i++) { var parent = nodes[i].parentNode; var span = document.createElement('span'); var clone = node.cloneNode(true); span.style.color = '#F00'; span.appendChild(clone); parent.replaceChild(span, node); }
とかやると、全てのテキストノードをフォントカラーが赤のspanで囲むことができる。