問題タブ [string-parsing]

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

windows - Win32:文字列を日付に変換する方法は?

Windowsでは、正確なフォーマット文字列を使用しstringてaを解析したいと思います。date

たとえば、文字列が与えられた

および形式:

日付が形式と一致することを確認しながら、文字列を日付に変換したいと思います。

また、Y2Kスライディングウィンドウ、ピボットを指定できる必要があります。これは、2桁の年が(正しく)入力された場合、その年を将来と見なす年数を指定することを意味します。例えば:


.NETはすでに、DateTime.ParseExact必要な機能をほぼ正確に実行する関数を提供しています。

私がそれに100年のピボット値を言うことができないことを除いて。

その他の例:

Windowsには文字列を日付に変換するためのネイティブAPIがないことを私は知っています。

フォーマット指定子を使用してstringをに変換する確立されたコードはありますか?dateコンピュータはもうしばらく前から出回っています。誰かがすでにこの問題を解決しているに違いありません。

これは、Windowsで表示されると予想されるいくつかのサンプルフォーマット指定子のリストです。

  • M/d/yyyy
  • M/d/yy
  • M/dd/yyyy
  • M/dd/yy
  • MM/d/yyyy
  • MM/d/yy
  • MM/dd/yyyy
  • MM/dd/yy
  • d/M/yyyy
  • d/M/yyy
  • d/MM/yyyy
  • d/MM/yy
  • dd/M/yyyy
  • dd/M/yy
  • dd/MM/yyyy
  • dd/MM/yy
  • yyyy/M/d
  • yy/M/d
  • yyyy/MM/d
  • yy/MM/d
  • yyyy/MM/dd
  • yy/MM/dd
  • dd MM yyyy
  • dd.MM.yyyy

も参照してください

0 投票する
5 に答える
6291 参照

c - cでのポインタと文字列解析

ポインターと文字列の解析がどのように機能するかを誰かが説明してくれるかどうか疑問に思っていました。ループで次のようなことができることは知っていますが、それがどのように機能するかはまだよくわかりません。

たとえば、文字列から最後の整数を取得しようとしています。次のような文字列がある場合const char *str = "some string here 100 2000";

上記の方法を使用して、最後の整数 (2000) が異なる可能性があることを知って、それを解析して文字列の最後の整数 (2000) を取得するにはどうすればよいでしょうか。

ありがとう

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

.net - C# が NaN を double として解析できない

日本の Windows PC では、C# の次の行でフォーマット例外がスローされます。

この行は、米国の私の PC で正常に実行されます

この問題のトラブルシューティングをどこから始めればよいかわかりません。何かご意見は?

前もって感謝します、ジム

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

java - Java getQueryString

だから私はgetQueryString()のcertianセクションをキャプチャしようとしています。文字列を調べて解析し、必要な特定のセクションを取得できることはわかっていますが、必要な部分を取得できることを望んでいました。

これが私のクエリ結果です:

私はこの部分をキャプチャするためだけに探しています:Ntt=info

パーツは、=info要求された検索に変更されます。

多くのAPIリクエスト機能を実行しましたが、自分に役立つものは見つかりませんでした。

解析する必要がありますか?

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

sql-server - 2 つのフィールドを新しいアイテムのみで 1 つにマージ

「パイプで区切られた値」を含む2つのテーブルがあります

例えば:

表1:

表 2:

表 2 を表 1 にマージして、表 2 に両方の表のすべての項目が含まれるようにする必要があります。

これをプログラムで行うには、テーブル 2 の各項目をループして、テーブル 1 に存在しない場合はテーブル 1 に追加するだけです。

SQL でこれをストアド プロシージャとしてどのように行うことができますか?

0 投票する
4 に答える
29449 参照

c++ - フォーマットされたデータをC++で読み取る方法は?

私は次のようにデータをフォーマットしました:

テキストファイルにあり、ifstreamを使用して読み取っていますが、数字と単語を区切るにはどうすればよいですか?単語はアルファベットのみで構成され、単語と数字の間に特定のスペースまたはタブがありますが、いくつあるかはわかりません。

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

string-parsing - 複雑な文字列形式を解析する必要があります。オートマトンの実装は賢明なアプローチですか?

私は現在、解析しなければならない特に不快な文字列形式に苦労しています。文字列には、解決する必要がある変数プロパティを示す部分文字列を含めることができます。のようなものを想像してみてください"ThisExampleStringContainsA[VARIABLE_PROPERTY]"。また、これらのプロパティは任意にネストすることができ、コンテキストに応じて異なる意味を持つこともできます。が実際に変数の有効な名前ではない場合[VARIABLE_PROPERTY](もちろん実行時に決定する必要があります)、それは文字列全体の通常の部分になり、変更されずそのまま残ります。次に、左角括弧の数が右角括弧の数と一致する必要がないため、無効な文字列はありません。This]Is[A[Valid]]][ExampleToo!. ルールは他にもありますが、これでアイデアが得られます。

そのため、現時点では、これにどのようにアプローチするかはわかりません。私の最初の試行は、if と else の信じられないほどの混乱で終わり、ソリューションには何らかの状態概念を適切に組み込む必要があることにますます気づきました。今、私はこれを行うためにオートマトンを使用することをますます考えています. しかし、私はオートマトンを純粋な理論的構築物としてしか見たことがありません。実際の実装に出くわしたことはありません。さらに、オートマトンは伝統的に単語を検証するために使用されます。つまり、正式に定義された言語に属しているかどうかを判断します。言うまでもなく、その言語を正式に定義することは私には困難です。

これにどのようにアプローチしますか?実際にオートマトンを実装することは健全なアプローチだと思いますか? オブジェクト指向設計の観点からこれをどのようにモデル化しますか? それが違いを生む場合、プロジェクトはC#にあります。まったく違うものを提案しますか?

/編集:私の説明は少し誤解を招く可能性があります。ここにいくつかの詳細があります:私にとっての問題は、プロパティを正しい順序(最も内側から最も外側へ)で見つけることです。解決する次のプロパティを特定したら、その最終値での実際の置換は比較的簡単です。

上記の例を取り上げて、何が起こるべきかを段階的に示します。完全な入力文字列は次This]Is[A[Valid]]][ExampleToo! のとおりです。最初の閉じ括弧と最後の開き括弧は、何も囲まれていないため、通常の文字です。同じことが、対応するブラケット ペアの間にないすべての文字にも当てはまります。残りは の部分[A[Valid]]]です。最も内側のプロパティを最初に解決する必要があります[Valid]。角かっこは、プロパティを識別する文字列を囲んでいるだけなので、Valid解決しようとしているプロパティの名前です。たとえば、この文字列は実際にはプロパティを識別し、実際の値に置き換えられますFoo。ブラケットを含む識別文字列が置き換えられるため、 に[Valid]なりFooます。今、私たちは見なければなりません[AFoo]]. AFooがプロパティを識別しないふりをしてみましょう。これにより、部分文字列は変更されません (括弧を含む)。最後に、2 番目の右括弧の後AFooに対応する左括弧がないため、これも単なる文字です。処理が完了すると、文字列全体が次のようになります。This]Is[AFoo]][ExampleToo!

この例が物事をもう少し明確にすることを願っています。ここでは文字列形式を簡略化していることに注意してください。これは、私がどのような困難に直面しているかを示すためのものです。問題にアプローチする方法についてのアイデアを提供してくれる答えを探しています。この解析は何千もの文字列に対して実行する必要があるため、ソリューションにはある程度妥当なパフォーマンスが必要です。

0 投票する
3 に答える
242 参照

java - テキスト スクリプトをパターンで部分文字列に分割する

次のスクリプトを検討してください(疑似言語ではまったくナンセンスです):

if-block のパラメータと内容をどのように取得しますか? if ブロックの形式は次のとおりです。

String.split()の正規表現パターンで使用してみまし^if\s*\(|\)\s*\{|\}\s*たが、これは惨めに失敗します。つまり、問題は) {内側の if ブロックにも}見られ、多くの場所で閉じが見られることです。ここでは、怠惰な拡張も熱心な拡張も機能しないと思います。

だから...これを正規表現で実装するためにここで必要なものへのポインタはありますか?

また、if ブロックのコードなしで残りの文字列を取得する必要があります (コードは から始まりますelse { ...)。解析された部分の長さに関する情報がないため、使用String.split()するのは難しいようです。

私は最初にこれのためにループベースのソリューションを(String.substring()頻繁に使用して)作成しましたが、それは退屈です。代わりにもっと派手なものが欲しいです。正規表現を使用するか、代わりに解析可能な文字列とパターンを取るカスタムの汎用関数 (これ以外にも多くのケースがあります) を作成する必要があります (if<whitespace>(...上記のパターンを考慮してください)。

編集:そうでなければ意味がなかったので、変数の割り当てに変更されました。

0 投票する
4 に答える
3817 参照

javascript - Javascript 数学パーサー ライブラリ

Javascript に優れた数学パーサーはありますか? 次のようなものを解析できるようにしたい:

ありがとう、

0 投票する
5 に答える
22851 参照

javascript - JavaScript / jQueryで、コンマ付きの数値を整数に変換する最良の方法は何ですか?

文字列「15,678」を値15678に変換したいと思います。メソッドparseInt()parseFloat()両方が「15,678」に対して15を返します。これを行う簡単な方法はありますか?