从对象键创建正则表达式
Create regex from object keys
如何使用下划线更好地简化以下内容?对于非常简单的事情来说,感觉代码太多了。它从对象键创建一个正则表达式。
var obj = {
'dog' : 1,
'cat' : 1,
'rat' : 1
};
var arr = [], regex;
_.each( obj, function( value, index ){
arr.push( index );
});
regex = _.reduce( arr, function(){
return new RegExp( arr.join('|'), 'i' );
});
// console.log( regex ) should output:
/dog|cat|rat/i
只需像这样使用Object.keys
和本机Array.prototype.join
console.log(new RegExp(Object.keys(obj).join("|"), "i"));
有了_
,就会_.keys
console.log(new RegExp(_.keys(obj).join("|"), "i"));
结果将是
/dog|cat|rat/i
我很快发现你不需要为此使用下划线。
var regex = new RegExp( Object.keys( obj ).join('|'), 'i' );
相关文章:
- 正则表达式(JavaScript),用于创建数字必须大于x的数据验证
- 如何在javascript中创建动态正则表达式
- 谷歌浏览器模式正则表达式在使用setCustomValidity动态创建表单时不起作用
- 如何创建一个像SQL十进制类型一样匹配(p,s)精度和小数位数的正则表达式
- 如何创建一个正则表达式来拆分行,除非有斜杠
- 使用变量中的 gi 标志创建正则表达式
- 由表达式文本创建的正则表达式是否共享单个实例
- 从对象键创建正则表达式
- 创建包含正则表达式匹配中所有组的数组的有效解决方案
- 从字符串创建的 Javascript 正则表达式 - 为什么它不起作用
- 基于输入的正则表达式创建
- 如何创建具有 2 个可能条件的正则表达式
- 如何创建正则表达式 查找 JS 文件(或 JSON)中的所有字符串
- 在正则表达式中创建第 n 级嵌套模式的算法
- 如何创建不允许分号,冒号单引号和双引号的正则表达式
- 如何正确创建这个正则表达式,jquery
- 创建一个像 WordPress 一样读取模式的正则表达式
- 如何从字符串创建正则表达式
- 使用正则表达式创建HTML标记
- 正则表达式创建