0

抽出したいジョブ番号がある文字列のリストがあります。この数値の形式と位置は常に異なります。

EG (太字のジョブ番号)。

  • JC Co#: 1 連絡先: 20202.月: Jan 1 2012 12:00AM
  • JC Co#: 1 連絡先: 321.月: Jan 1 2012 12:00AM
  • JC Co#: 1 連絡先: 20093.月: Jan 1 2012 12:00AM
  • JC Co#: 1 ジョブ: OOSJ. 月: 2012 年 1 月 1 日 午前 12:00
  • JC Co#: 1 ジョブ: O333J. 月: 2012 年 1 月 1 日 午前 12:00
  • JC Co#: 1 ジョブ: 323J. ACO: 2012 年 1 月 1 日 午前 12:00
4

2 に答える 2

1

与えられた例に基づいて、次の戦略を提案します。

  1. 2 番目のコロンを見つける
  2. 2 番目のコロンの後の最初の終止符/ピリオドを見つける
  3. この 2 つの間のテキストを選択します

現在、VB (のバリエーション) にアクセスすることはできませんが、C# では次のようになります。

var text = "JC Co#: 1 Job: OOSJ. Month: Jan 1 2012 12:00AM";
var firstColonPosition = text.IndexOf(":");
var secondColonPosition = text.IndexOf(":", firstColonPosition + 1);
var firstPeriodPosition = text.IndexOf(".", secondColonPosition);
var jobNumberText = text.Substring(secondColonPosition + 1, firstPeriodPosition - secondColonPosition - 1);

間隔についてはよくわからないので、おそらく結果をトリミングしたいと思うでしょう。

于 2013-03-14T00:24:22.037 に答える
0

instrでsubstrを使用できます。あなたのフィールド値が asdfg - itsnoteasy - whattod

そして、あなたは必要ありません-whattodoフィールドから substr(field,0, instr(field,'-',1,2)-1)

リンクを参照してください、

http://www.crystalreportsbook.com/Forum/forum_posts.asp?TID=17842 http://www.crystalreportsbook.com/Forum/forum_posts.asp?TID=10231

于 2013-03-14T12:09:49.977 に答える