使用`re`或`split`解析后保存分隔符

时间:2016-10-23 05:56:38

标签: python regex

我有一些字符串要解析如下,有两个分隔符:

import re
str='Beautiful is:better than:ugly'
re.split(' |: ',str)

输出是:

['Beautiful','is','better','than','ugly']

我也需要在数组中保存分隔符,有没有办法像下面的输出那样做?

['Beautiful', ' ', 'is', ':', 'better', ' ', 'than', ':', 'ugly']

1 个答案:

答案 0 :(得分:1)

您需要捕获组:

$.validator.unobtrusive.adapters.add('filetype', ['validtypes'], function (options) {
    options.rules['filetype'] = { validtypes: options.params.validtypes.split(',') };
    options.messages['filetype'] = options.message;
});

$.validator.addMethod("filetype", function (value, element, param) {
    for (var i = 0; i < element.files.length; i++) {
        var extension = getFileExtension(element.files[i].name);
        if ($.inArray(extension, param.validtypes) === -1) {
            return false;
        }
    }
    return true;
});

function getFileExtension(fileName) {
    if (/[.]/.exec(fileName)) {
        return /[^.]+$/.exec(fileName)[0].toLowerCase();
    }
    return null;
}