0

文字列内のセミコロンの数をカウントし、それに 1 を追加する新しい計算列を追加しようとしています。したがって、私が持っている列にはたくさんのエイリアスが含まれており、各行の数を知る必要があります。

たとえば、A; B; C; D

したがって、基本的にこれは 4 つのエイリアス (3 つのセミコロン + 1) があることを意味します。

200 万行以上でこれを行う必要があります。助けてください!

4

2 に答える 2

1

ここに正規表現があります:

Len(RXReplace([Column 1], "(?!;).", "", "gis"))+1

RXReplace引数として取ります:

  1. 作業したい文字列 (この場合は列 1 にあります)
  2. 使用する正規表現 (ここでは (?!;) です)
  3. 置換したいもの (正規表現に一致するすべてが削除されるように、この状況では空白)
  4. 最後に、どのように機能させたいかを示すパラメーター (gis を渡します。これは、最初の一致だけでなく、すべての一致を置換し、大文字と小文字を区別し、改行を置換することを意味します)

これを でラップするとLen、セミコロンの数が残ります。最後に 1 を追加して、最終結果を取得します。

正規表現について詳しくは、https ://msdn.microsoft.com/en-us/library/az24scfc(v= vs.110).aspx をご覧ください。結腸。

RXReplace と Len の詳細については、https ://docs.tibco.com/pub/spotfire/6.0.0-november-2013/userguide-webhelp/ncfe/ncfe_text_functions.htm を参照してください。

于 2016-02-05T22:54:03.977 に答える