2

文字列の最後の6文字を抽出し、それらの途中にスラッシュを追加するには、C#正規表現が必要です。例えば:

xx_xxxx_xxxABCXYZ.Something.csv

私は欲しいABC/XYZ

3文字のコンポーネントは何でもかまいませんが、前のxの量はさまざまです。ただし、必要な6文字は、常に最初のピリオドの直前です。

パターンと置換をGUIに入力する必要があるため、追加のコードを選択することはできません。

とても有難い。

4

2 に答える 2

4

これを使って:

^.*?(\w{3})(\w{3})\..*$

と置換する:

$1/$2

パターンは文字列全体と一致するため、最終的にすべてが削除されますが、キャプチャグループでそれぞれ3文字の2つの文字列がキャプチャされます。$1次に、これらにアクセスし、とを使用して元の場所に戻します$2。パターンの後にはも続く\.ため、6文字の後にドットが必要です。?後は、(.*の代わりに)最初に発生する可能性のあるものを見つけることを確認しますething

これにより、数字、文字、およびアンダースコアで6文字を構成できることに注意してください。文字のみが必要な場合は、[a-zA-Z]または大文字[A-Z]のみを使用してください。

于 2012-10-25T21:53:30.453 に答える
3

Path.GetFileNameWithoutExtensionを使用してから、string.Insertを使用してスラッシュを追加します

于 2012-10-25T21:44:12.023 に答える