Select based on "version"

Try SelectCommonPrefix.

My test folder:

function OnInit(initData) {
    initData.name = 'SelectCommonPrefix';
    initData.version = '2025-12-04';
    initData.url = 'https://resource.dopus.com/t/select-based-on-version/57949/6';
    initData.desc = 'SelectCommonPrefix';
    initData.default_enable = true;
    initData.min_version = '12.0';
}

function OnAddCommands(addCmdData) {
    var cmd = addCmdData.AddCommand();
    cmd.name = 'SelectCommonPrefix';
    cmd.method = 'OnSelectCommonPrefix';
    cmd.desc = 'SelectCommonPrefix';
    cmd.label = 'SelectCommonPrefix';
    cmd.template = '';
    cmd.hide = false;
    cmd.icon = 'script';
}

function OnSelectCommonPrefix(scriptCmdData) {
    var cmd = scriptCmdData.func.command;
    var tab = scriptCmdData.func.sourcetab;
    var ssi = DOpus.Create().StringSetI();
    var map = DOpus.Create().Map();

    cmd.deselect = false;

    var re = /^(.*)_v(.*)$/;

    for (var e = new Enumerator(tab.unsorted.files); !e.atEnd(); e.moveNext()) {
        var item = e.item();
        ssi.insert(item.realpath);
    }

    for (var e = new Enumerator(ssi); !e.atEnd(); e.moveNext()) {
        var item = e.item();
        var arr = item.match(re);
        if (!arr) continue;
        if (arr.length != 3) continue;
        var prefix = arr[1];
        map.set(prefix, item);
    }

    if (map.empty) return;

    cmd.ClearFiles();

    for (var e = new Enumerator(map); !e.atEnd(); e.moveNext()) {
        var item = map(e.item());
        cmd.AddFile(item);
    }

    cmd.RunCommand('Select FROMSCRIPT DESELECTNOMATCH');
}

Save CommandSelectCommonPrefix.js.txt to   

%appdata%\GPSoftware\Directory Opus\Script AddIns

How to use buttons and scripts from this forum