1

文字列内から値を取得して別の列に入れたいという変換があります。

値は次のとおりです。

  • -99 から 99 までの正または負の整数
  • 与えられた文字列の「for」と「yards」の間にある

文字列値の例 (各行は個別に解析されます):

  • "(8:27) T.Barber の右ガードから SF 21 への利益なし (J.Winborn B.Young)."
  • "(8:06) T.バーバーは SF 24 にタックルを残して -3 ヤード (J.ウィンボーン)"
  • "(8:02) G.ハーストの右端から SF 26 まで 2 ヤード (M.バロー B.ショート)"
  • "(7:22) J.Garcia が E.Johnson にパスして SF 27 に 1 ヤード (D.Jones O.Stoutmire)"
  • 「(6:43) J.ガルシアの左エンドが SF 40 で 13 ヤード (J.セホーン) をランした。バック トゥ パス ラッシュ。」
  • 「SF-S.Gragg オフェンシブ ホールディングに対するペナルティは、SF 27 で施行された 10 ヤード - プレーなし」。

Konesans RegEx Clean Tranformation ( http://www.konesans.com/products/regexclean-transformation.aspx ) を使用していますが、正規表現の使用は制限されています。オンライン ツールを使用して、このパターンを構築することができました。

for (?<numval>(-?\d[\d|\s]))\s?yard.

(ワークスペースへのリンク - http://regexr.com?33u0f )

SSIS 変換の構成

変換は、派生列で NULL 値のみを返します。この変換の助けをいただければ幸いです。

4

1 に答える 1

2

私はツールの経験がなく、テストする方法もありませんが、試してみてください

マッチ (?<yards>-?\d\d?)\syard

交換 ${yards}

于 2013-02-26T18:42:42.900 に答える