初心者のFileMaker pro Q&A (旧掲示板)

みんなに優しく、解りやすくをモットーに開設しています。 以下のルールを守りみんなで助け合いましょう。

1.ファイルメーカーで解らない事があればここで質問して下さい。 何方でも、ご質問・ご回答お願いします。 (優しく回答しましょう)

You are not logged in.

Announcement

新しい掲示板は、こちら:https://fm-aid.com/forum/t/filemaker


#1 2015-12-05 14:55:25

aki-ra
Guest

html から特定の文字を拾いたい

こんにちは。Mac0SX で FMP13を利用している初心者のAKIと言います。

html から特定の文字を拾いたいのですが、どうやっても抽出できなくてくじけてしまいそうです..。
自分なりに調べも解らず、どなたか教えて下さい!

やりたいこと
URL:http://pm25.jp/r/47207020/
FMG(iPhone5s)で、ボタンひとつで上記URLの「1日の平均」の数字を取得することです。

今やっていること。
スクリプトでhtmlをとってきて
・フィールド設定[ AKI::html ; GetLayoutObjectAttribute ( "URL" ; "content” ) ]

{71行目} という計算フィールドに、1日の平均値が記載されてる htmlの71行目を抜き出し
・GetValue ( html ; 71 )

その中の <b> (数字) </b> を {日平均値} に書き出したいのですが、
・Let… ここがわかりません…

そも、このやり方で合っているのでしょうか?

調べてみたら
Let ( [
web = GetLayoutObjectAttribute ( "URL" ; "content");
s = Position (、、、) ;
e = Position ( 、、、 )
];
GetAsNumber( Middle ( 、、、、  )
)
というのも見かけたのですが、この方がスマートな気もするけれど、やっぱりやり方が解らなくて。

どなたか教えて頂けるとありがたいです。よろしくお願いします。

#2 2015-12-05 15:50:23

旅人
Member

Re: html から特定の文字を拾いたい

必ず71行目にあって、<b>  </b>で囲まれていて、それがその行の最初の、<b>  </b>なら
GetValue ( Substitute ( {71行目}  ; ["<b>" ; ¶];["</b>";¶ ]) ; 2 )

Offline

#3 2015-12-05 16:21:09

aki-ra
Guest

Re: html から特定の文字を拾いたい

旅人さんのお陰で出来そうです。
もう少し手を加えてみます。ありがとうございます!!

#4 2015-12-05 23:24:59

aki-ra
Guest

Re: html から特定の文字を拾いたい

html にソースを読み込んでおき、

Let([
start = Position(html;   "<b>"  ; ¶ ; 3 )+3;
end = Position(html;  "</b>"  ; ¶ ; 3 )
];
Middle(html ; start; end - start)
)//Let

という方法で実現できました。ありがとうございました。

Registered users online in this topic: 0, guests: 1
[Bot] ClaudeBot

Board footer

Powered by FluxBB
Modified by Visman

[ Generated in 0.009 seconds, 8 queries executed - Memory usage: 505.16 KiB (Peak: 509.7 KiB) ]