1

ファイルの場合、*.txt を使用できることはわかっています。これは、拡張子が .txt のすべてのファイルを意味します。文字列にこのようなものがあるかどうか知りたいたとえば、文字列 A は多くのスペースで構成されています。「スペース blabla スペース」の数はわかりませんが、blabla があると確信しており、A の場合はこのコマンドを実行します。 ="blabla" なら I:=I+1; 私はI = 0になります(スペースのため)。この問題を解決するにはどうすればよいですか?

4

1 に答える 1

1

ファイルシステムの「ワイルドカード」は、「パターン マッチング」の一例です。

たとえば、Windows では、" .txt" や " .???" などの単純なパターンを使用できます。

この種のものの一般的な用語は、「正規表現」または「正規表現」です。私はあなたが本当に求めていると思います:

「Q: Ada は文字列の正規表現をサポートしていますか?」

答えは「はい」のようです。

GNAT には、正規表現を処理するための組み込みパッケージが 2 つあります。1 つ目は「Regexp」と呼ばれ、2 つの異なる標準を使用してパターン マッチングを実行します。まず、「man bash」で説明されているように、標準の UNIX シェル「ファイル グロビング」表現をサポートします。次に、Ada リファレンス マニュアルに記載されている BNF パターンをサポートします。

以下は、正規表現ライブラリで実行できる種類の文字列操作の良い例です。

于 2013-10-19T21:32:25.083 に答える