0

特定のフィールドに 60 文字の制限が必要な xml ファイルがあります。

<Description>This is a long description that is really over 60 characters long and needs to be shortened</Description>

すべてのオカレンスをトリミングして、60 文字しか持たないようにする必要があるため、上記の出力は次のようになります。

<Description>This is a long description that is really over 60 characters</Description>

notepad ++を使用して、正規表現を使用して検索と置換を行うにはどうすればよいですか?

各ファイルに対してこれを実行する必要がある複数のファイルがあり、約 2000 行あり、このフィールドが約 10 ~ 15 回出現します。

すべてのフィールドが 60 文字を超えるわけではなく、一部のフィールドのみです。

データブロックの例

        <Product>
        <SuppliersProductCode>PF01215</SuppliersProductCode>
        <BuyersProductCode></BuyersProductCode>
        <GTIN>0</GTIN>
        <Description>This is a long description that is really over 60 characters long and needs to be shortened</Description>
        <Properties>
            <Quantity UOMCode="EA">
                <Packsize>1</Packsize>
                <Amount>1</Amount>
            </Quantity>
        </Properties>
    </Product>

ありがとう

4

1 に答える 1

1

正規表現 ,<Description>([^<]{0,60})[^<]*</Description>は、説明に「<」が含まれていないと仮定して、必要なものと一致すると思います。改行文字もカウントされることに注意してください。これを避けたい場合は、 を使用してください<Description>\R?([^<]{0,60})[^<]*</Description>

「置換」ボックスに入力し<Description>\1</Description>ます。\1括弧の最初のペアの間の式によって一致するコンテンツを参照します。これは後方参照と呼ばれます。より詳しい情報

于 2012-08-08T16:44:04.543 に答える