

notepadエディタで以下のようなことがしたいです。

[code]

    00001297    00001297
    00001235    00001235
    00001245    00001245
    
    
[/code]

上記のような数字を

[code]

    00001297
    00001235
    00001245
    
    
[/code]

のように片方だけにしたいです。  
どのような置換方法がありますでしょうか？


CC BY-SA 4.0
2021-07-24T12:14:39.020
78386
2021-07-25T10:02:58.137
10088
question
正規表現
連続する２つの数字の片方を置換して消したい


質問するときは環境に関する情報を詳しく正確に記述しましょう。

  * [技術系メーリングリストで質問するときのパターン・ランゲージ](https://www.hyuki.com/writing/techask.html#env)

正規表現のエンジンによって回答が変わる可能性があります。  
**Windows標準のメモ帳 (notepad.exe)
は正規表現に対応していませんが、質問には「正規表現」というタグが最初から付いているので、正規表現に対応した別のエディターを使っているものと仮定します。また、ひとまず一般的なECMA正規表現エンジンだと仮定します。**

キャプチャと部分文字列を使えば実現できると思います。

置換前: `^([0-9]+)\s+\1$`  
置換後: `\1`


CC BY-SA 4.0
2021-07-24T12:55:16.380
78387
2021-07-25T10:02:58.137
2021-07-25T10:02:58.137
15413
15413
78386
answer


> notepadエディタで以下のようなことがしたいです。

メモ帳（notepadエディタ）には正規表現は搭載されていません。他のツールを使用してください。


CC BY-SA 4.0
2021-07-25T00:42:42.107
78388
2021-07-25T00:42:42.107
4236
78386
answer


[Notepad++](https://notepad-plus-plus.org/)
であれば検索や置換処理に正規表現(PCRE)を使用することができますが、この場合は PowerShell を使って処理することも可能です。

**PowerShell script**

[code]

    Get-Content .\data.txt |
    ForEach-Object {
      $arr = $_ -split "\s+"
      If ($arr[0] -eq $arr[1]) {$arr[0]} Else {$_}
    } | Out-File .\data_uniq.txt
    
[/code]

**data.txt**

[code]

    00001297    00001297
    00001235    00001235
    00001245    00001245
    00002000    00002001
    
[/code]

**data_uniq.txt**

[code]

    00001297
    00001235
    00001245
    00002000    00002001
    
[/code]


CC BY-SA 4.0
2021-07-25T08:40:41.297
78395
2021-07-25T08:40:41.297
47127
78386
answer