問題タブ [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.
haskell - Haskell で長いタプル定義を避ける
hxtでの作業のために、次の関数を実装しました。
haddock のコメントで述べたように、上記の関数は 8 項関数arr8
を取り、8 つの引数の矢印を返します。私は次のような関数を使用します: to(x1 &&& x2 &&& ... x8) >>> arr8 f
は矢印です。x1
x8
私の質問: 大きなタプルの定義を避ける方法はありますか? のよりエレガントな実装はありarr8
ますか?
情報: 関数arr4と同じコード スキーマを使用しました( arr4のソース コードを参照) 。
haskell - Haskell HXT: hxt-curl を使用しないリモート DTD を使用した xml ドキュメントの解析
次の XML ドキュメントを で解析しようとしていますHXT
。
ネットワークアクセスが必要になるため、ここでは検証は必要ありません。残念ながら、HXT はこの単純なドキュメントを解析するためにhxt-curl
/パッケージをインストールする必要があります。hxt-http
hxt-curl
/hxt-http
パッケージは本当に必要ないので、依存関係のリストに追加したくありません。解析中のドキュメントを変更できません。別の xml 解析ライブラリに移動することも望ましくありません。
不要なパッケージを追加せずにサンプル ドキュメントを HXT で解析する方法はありますか?
haskell - HXT を使用して単語を分割する
HXT で単語を分割するにはどうすればよいですか? 例えば :
私はそれを持っています - >
そして、単語 ClassName を分割したい! そのプログラム (チーム) の結果として、ハイパーリンクの Web サイト (http:// ......) のセットが得られるからです。(XML ファイルのため) 解決するためのヒントを教えてください。ありがとうございました !
haskell - Haskell の矢印: リストに値を挿入する
シンプルなhtmlページを解析する場合に備えて、ハスケルの矢印を学んでいます。タスクは、ベース リージョンのサイトをダウンロードbaseRegion = Region "Yekaterinburg" "http://example.com/r/ekb"
し、別のリージョンへのリンクを解析することです (hxt 経由):
結果にベース領域を追加します。
- 書き方は
allRegions
?または、どこを掘り下げて書くべきですか? - 別の質問は、
regions
の結果を追加するだけでなく、領域リストの特定の場所に挿入baseRegion
する方法です (たとえば、2 番目の要素の後、または名前が「E」で始まる要素の後)。
haskell - HXT によって解析された文字列を適切な UTF8 文字列にエンコードする
単純化されたパーサーの例である hxt を使用して、utf8 でエンコードされたページを解析しています。
名前を印刷しようとするまで、すべてが正常に機能します。
オプションを使用して解析していますwithInputEncoding "utf8"
。hxt によって解析された文字列を適切にエンコードするにはどうすればよいですか?
haskell - エラー時の HXT スキップ要素
テーブルのリストを反復処理しており、内部でproc
例外をスローする可能性のある関数を使用しています (動作を変更することはできません):
whereはタプルにparseTable :: ArrowXml a => a XmlTree (String, String)
解析<tr><td>key</td><td>value</td></tr>
し、andによって Thing を構築し、例外をスローする場合があります (名前と情報の両方に依存します)(key, value)
mkThing :: String -> [(String, String)] -> Thing
name
info
ビルドできないものの処理をスキップするにはどうすればよいですか? 例外をキャッチしないままにしておくと、何らかの形で文字列に変換され、出力に入ります。