javascript - 如何检查字符串是否与带星号的模式匹配

标签 javascript node.js

我有一个文件列表:

var files = [
    "user_parse_info",
    "user_parse_age",
    "site_render_info",
    "site_parse_name"
]

现在我有一个模式串:

var pattern = "site_*_name";

这应该只匹配最后一个文件。 我怎样才能检查这个?也许是正则表达式?

最佳答案

是的,正则表达式是更好的选择。

var _ = require('nimble');

var files = [
    "user_parse_info",
    "user_parse_age",
    "site_render_info",
    "site_parse_name"
];

var re = /^site_.*_name$/;

var result = _.filter(files, function (val) {
     return re.test(val);
});

关于javascript - 如何检查字符串是否与带星号的模式匹配,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23919250/

相关文章:

node.js - Node js elementtree 需要 get 找不到模块 'sax'

javascript - 没有递归函数,仍然收到超出最大调用堆栈大小的错误

Javascript 正则表达式仅返回一次出现

JavaScript 提升 : Function Can Refer to Another Function Declared Below It?

javascript - 如何从未隐藏的第一个复选框中获取值

c++ - 为什么 std::string 操作表现不佳?

node.js - 当我在node中使用phantomJS时,出现错误

javascript - Google maps API V3 - 无法对 AutocompleteService 预测进行地理编码

javascript - Jquery else if 为空

node.js - 无法加载 gulp : Error: ENOENT: no such file or directory 'node-sass/vendor'