specmanで文字列のリストに参加するにはどうすればよいですか?

StackOverflow https://stackoverflow.com/questions/1026012

  •  06-07-2019
  •  | 
  •  

質問

印刷したいリストがあります:

foo: list of string;

foo の要素を連結した文字列 bar を作成します。 Perlでは:

$bar = join " ", @foo;

Specmanでこれを行う唯一の方法は、次のとおりです。

var bar: string = "";
for each in foo {
    bar = appendf("%s %s", bar, it);
};

これは、 foo の各要素の bar を自分自身にコピーするため、パフォーマンスが非常に低いようです。これを行うより良い方法はありますか?

役に立ちましたか?

解決

これ専用の機能もあります:

str_join(list: list of string, separator: string) : string

help str_join が詳細を提供すると確信しています。 str_match str_split などの便利な機能もあります。

追加のヒントとして、 e言語クイックリファレンスを自分で印刷する必要があるかもしれません。 http://www.cadence.com/Community/blogs /fv/archive/2009/06/19/send-us-suggestions-for-updating-the-e-specman-quick-reference-card.aspx

他のヒント

質問を書いているときに、 to_string()メソッドに出くわしました。使用できます:

var bar: string = foo.to_string();

これはPerlと同等です:

$bar = join "\n", @foo;

スペースを使用する場合は、次を使用できます:

var bar: string = str_replace(foo.to_string(), "\n", " ");
ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top