2

jSoup .jar ライブラリを使用する Railo でアプリを作成しています。私の CFML 言語では、すべてうまく機能します。

とにかく、「スタイル」属性を使用してすべての要素を取得できます。

<cfset variables.mySelection = variables.myDocument.select("*[style]") />

ただし、これは、「背景」または「背景画像」スタイルを持たないことがある要素を含む配列を返します。例として、HTML は次のようになります。

<p style="color: red;">I should not be selected</p>
<p style="background: green">I **should** be selected</p>
<p style="text-align: left;">I should not be selected</p>
<p style="background-image: url("/path/to/image.jpg");">I **should** be selected</p>

したがって、上記の要素を取得できますが、背景スタイルがないため、配列に1番目と3番目は必要ありません...これらのみを取得して操作する方法を知っていますか?

私は計算されたスタイルや複雑なものを求めているわけではないことに注意してください.インラインCSSスタイルのプロパティに基づいてフィルタリングできるかどうか疑問に思っています. おそらく、事後の正規表現ですか?私はアイデアを受け入れます!

:contains(background)をキーワードにいじってみたのですが、それが正しい道なのかわかりませんでした?

助けてくれて本当にありがとうございます。マイケル。

4

2 に答える 2

1

試してみてください:

variables.myDocument.select("*[style*='background']")

*=属性コンテンツの部分文字列に一致する標準セレクターと同様です。

于 2012-11-30T14:25:46.823 に答える
0
Elements els = doc.select(div[style*=dashed]);

または

Elements elements = doc1.select("span[style*=font-weight:bold]");
于 2019-10-18T06:39:40.057 に答える