-1

XPath を使用して Web サイトから電子メール アドレスを抽出しようとしています。ページ全体でメール アドレスは 1 つだけです。XPath を使用してその 1 つの電子メール アドレスを参照する簡単な方法はありますか?

何かのようなもの://a/contains(@href,'@')

上に投稿したものと同様のことを試みましたが成功しませんでした.Xpathを使用して電子メールアドレスを取得する信頼できる方法についてアドバイスをいただければ幸いです. <a href="mailto:example@george.com">ページに 1 つの電子メール アドレスしかなく、単純なタグ以外の識別情報がないと仮定します。

ありがとうございました

4

1 に答える 1

1
//a[contains(text(), "@")]

@これにより、電子メール アドレス自体ではなく、電子メール アドレス (少なくとも記号)を含むノードが返されます。

ノードに電子メールアドレスのみが含まれ、他の隣接するテキストが含まれていないことが確実な場合は、次のようにして取得できます

//a[contains(text(), "@")]/text()

確信が持てない場合は、テキストから手動で文字列処理する必要があります。XPath 1.0 では、これは非常に面倒です。実装によっては、おそらく REGEX 機能にアクセスできないからです。

于 2012-06-29T19:18:55.973 に答える