問題タブ [scala-2.12]

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 投票する
0 に答える
327 参照

regex - Scala で正規表現の名前付きキャプチャ グループが IllegalStateException をスローする

編集 1: @GoodDokval regex = """(\d+) (\S+)""".r("Id", "Name")正規表現パターンと一致する文字列がユーザーによって提供されるため、使用できません。グループの数と命名は毎回カスタムです。

編集 2: @Wiktor Stribiżew 質問はScala regex Named Capturing Groupsとは異なります。ここでは、名前付きキャプチャ グループが Scala で機能することを明確に確認できますが、それは特別な状況でのみです。作業例:

機能しないもの:

このコードは、文字列内の複数の一致を見つけるために使用され、1 年以上機能しましたが、最近、名前付きのキャプチャ グループにアクセスするとjava.lang.IllegalStateException: No match found.

が削除されると正常に動作するsequence.lengthため、一致の数を取得すると、Match オブジェクトが何らかの形で壊れているようです。

シーケンスの代わりにリストを使用しようとすると、同じことが起こります。

一致の数を確認してから使用することは違法または未定義ですか? 例外の原因と動作の変化は何ですか?

最近 Java を更新した覚えがありません。私の環境は次のとおりです。

0 投票する
0 に答える
220 参照

scala - scala 2.12 では、実行時に作成された TypeTag がシリアライズ可能でないのはなぜですか?

コンパイル時のツールを使用せずにシリアライズ可能な TypeTag を作成する方法を探しています (ランタイムに完全に依存しています)。これは、すべてのリフレクティブ言語の基本機能です。

この投稿の回答では、いくつかの方法が提案されています。

Scalaでは、シリアル化可能な型からTypeTagを作成する方法は?

それらのどれも機能しませんでした:

ttg2および実行時に作成された場合ttg3、それらをシリアル化または逆シリアル化するときにエラーが発生し、次のエラーがttg2発生します。

ttg3エラーが発生します:

scala リフレクションの設計に精通している場合、機能する TypeTag を生成する「標準的な」実装を提供できますか?