問題タブ [hxt]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
1 に答える
532 参照

haskell - リンカが Parsec ライブラリを見つけられない

HXTを使用して Web スクレイピングを試みていますが、依存関係の 1 つがhxt-regex-xmlschema-9.2.0常にインストールに失敗します。エラーはld: library not found for -lHSparsec-3.1.7-ghc7.8.3です。リンクが失敗する理由がわかりません。私はパーセックをインストールしました -cabal install parsec-3.1.7うまくいきました。OSX 10.10.1、GHC 7.8.3、および gcc 4.9.1 を実行しています。

編集: からの出力cabal install hxt-regex-xmlschema-9.2.0:

0 投票する
1 に答える
119 参照

haskell - アクセント付きの単語(スペイン語)を失うことなくHTMLページを解析するには?

アクセント付きの単語 (スペイン語) を含む HTML Web ページを読んでいます。

私はHXTを使用しています:

オプションの使用

withInputEncoding utf8

それらの文字を破棄し、結果として次の単語を取得します: Ttulo , Ao , ngel , por qu nos vamos? オプションの使用

withInputEncoding iso8859_1

これらの文字を文字列に変換し、結果としてRom\225nticaMan\ 180s 、H\233ctorのような単語を取得します。\225、\ 180または\233は、文字ではなく文字列です。

HXT でこの状況を適切に管理し、すべての単語を変更せずに取得するための最良の方法/方法/アプローチは何ですか?

ありがとう。

0 投票する
1 に答える
181 参照

xml - HXT を使用して XML ファイル内の特定の要素を編集するには?

要するに、これが私が達成したいことです:

"foo.xml":

期待される結果 (の内容"bar.xml"):

...問題にアプローチする私の試み:

質問:ルート要素を変更/削除せずに、選択した要素だけを直接編集する方法は? また、このプログラムはファイルを作成しないため"bar.xml"、何かが間違いなく間違っていることに注意してください。トレースは、矢印を適用した後、applicドキュメントが 3 つのa要素 (感嘆符なし)"foo"で構成されていることを示しています。"bar""baz"

0 投票する
2 に答える
132 参照

xml - HXT: 矢印の出力を関数の引数として使用する方法は?

この質問に適切なタイトルを付けるのは非常に難しいです... 私は再び HXT に行き詰まっています。やりたいことは理解できますが、矢印でうまく機能させる方法がわかりません。ここでは、問題を簡単に説明します。

関数fooは を受け取り、Int矢印を返します。

関数barはいくつかの属性の値を抽出します:

ここで、 s からs へのbazマップを取り、矢印を返すように記述する必要があります。StringInt

ロジックbaz: で属性の値を抽出barし、マップで検索します。return の場合M.lookupJust xinvoke foo x、それ以外の場合は何もしません (矢印の入力はそのまま通過します)。

私の知る限り、そのような矢印はすべてフィルターとして機能するため、実際にはArrowXml a => a XmlTree Stringtype は を取り、XmlTree(おそらく空の)Stringのリストを返すことを意味します。これにより、 のロジックを再定式化できますbaz。与えられた入力に対してXmlTree多くの文字列が存在する可能性があり、すべての文字列を使用して整数を検索し、最初に見つかった整数を に渡す必要がありますfoo。それらの結果がすべて の場合はNothing、何もしないでください。

ここで私が思いついたもの:

コンパイラが気に入らないだけでなく、推論も困難です。

0 投票する
2 に答える
146 参照

xml - HXT で XML ツリーの特定のブランチを抽出する方法

例を挙げる:

関数 atTag を使用してすべての「pou」を取得する方法を知っています。

しかし、SFCタグで「pou」だけを抽出するにはどうすればいいですか?それを行うためのきれいな方法はありますか?

前もって感謝します!

0 投票する
2 に答える
80 参照

xml - 一部の要素の終了タグを保持したまま XML ファイルをコピーする

XML ファイルをコピーしてその一部を編集する必要があるものをハッキングしています。編集は問題ありませんが、興味深いことに、コピーは非常に難しい場合があります。これは基本的に「リバース エンジニアリング」作業であり、いくつかの要素の終了タグを何らかの方法で保持する必要があることがわかりました (要素に空白しか含まれていない場合や空であっても)。問題は、HXT が次のようなものを読み取るときです。

次に、それを次のように印刷します

withOutputXHTML関数のオプションを指定する明示的な終了タグ(またはそれを呼び出すもの)を常に使用するように指示できますが、次writeDocumentのように記述される要素があります

«そのまま» コピーする必要があります。

したがって、基本的に私の問題は次のようになります: «特定の要素の終了タグを保持してこのファイルをコピーするには?»:

参照/実験用の単純なコピー プログラム:

0 投票する
1 に答える
181 参照

xml - 一度に 1 つの要素を追加する矢印

ArrowPlusこの質問はHXTに関するものですが、一般的な概念に当てはまると思い ます。次のプログラムを検討してください。

に何が保存されるか分かりますtest.xmlか? 私の期待:

私のロジック: 矢印barはすべての入力をコピーし、1 つの「バー」要素を追加します (thisアイデンティティ矢印のエイリアスです):

したがって、結果は3 つの 'bar' 要素である必要があります (ファミリの矢印は入力を無視し (内容を生成するために使用することはできますが)、新しく作成された要素のみを出力するため、1 つの 'bar' 要素のみになることにbar >>> bar >>> bar注意してください)。 .eelem "bar" >>> eelem "bar"mkelem

test.xml以上のことを踏まえて、プログラム実行後の内容を示します。

質問:

  1. とは<//>?

  2. 'bar' 要素が 3 つではなく 7 つあるのはなぜですか? この重複の理由は何ですか?

  3. なぜ私が得ると置き換えるbar >>> bar >>> barnone >>> bar >>> bar >>> bar

noneゼロの矢印はどこにありますか。ここでは矢印のモノイドを扱いますよね? none(≡ zeroArrow) はその ID である必要があるため、次のようになります。 none <+> eelem "bar"これは「bar」要素を生成し、後続の呼び出しは 2 つの別の要素を追加する必要があります。しかし、何も得られません!

  1. bar一度に 1 つの「バー」要素を追加する適切なバージョンの矢印を作成するにはどうすればよいですか?

4つも質問して申し訳ありませんが、関係は深いと思いますので問題ありません。