アプリ版:「スタンプのみでお礼する」機能のリリースについて

C#での質問です。

とあるウェブページのhtmlの中から、そのhtmlに存在する全てのaltタグの中身のテキストだけを取り出し、その文字数をカウントしたいと考えております。


<img src="http://test" alt="AAA">あいうえお<img src="http://test" alt="BBB">

例えば、上記のようなHTMLソースがあったとしら、altの中身は合計で「AAABBB」の6文字になりますが、この「6」という数値を導きたいということです。


分かるかたがいらっしゃいましたら、ぜひご享受くださいm(__)m

A 回答 (3件)

1行ごとにalt="の位置を検索して次の”の位置までの文字数をカウントする。


検索はstring.IndexOf()でできます。
先頭座標が取得されるのでalt="の文字数分だけずらしてやります。
これで1行の文字数が取得できるので、すべての行の文字数を取得して足しあわせるだけです。

文字数の取得は正規表現を使うと簡潔に記述できるかもしれません。
    • good
    • 0
この回答へのお礼

なんとか正規表現でやれそうな感じがします。

ありがとうございました。

お礼日時:2014/08/15 18:12

余計なことかもしれんけど, それ「タグ」じゃないからね.

    • good
    • 0
この回答へのお礼

そうなんですね。ありがとうございました。

お礼日時:2014/08/15 18:13

HtmlDocumentクラスのメソッドとか使えばおそらく取れるとは思われますが……。



>altの中身は合計で「AAABBB」の6文字になりますが、この「6」という数値を導きたいということです。

「AAああああ」の場合は何文字になるんでしょう?

この回答への補足

回答ありがとうございます。

その場合も6文字としてカウントするようにしたいと思っています。

補足日時:2014/08/14 22:14
    • good
    • 0

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!