加入Regex表达式数组
Join Regex Expression Array
我有一个单词数组,例如apple、banana、horse,我想在稍后的函数中使用它们作为分割点。
我发现了如何连接regex表达式,但它适用于固定数量的表达式:如何在JavaScript中连接regex文本?
问题:如何加入正则表达式数组?
filterTemp = [];
for (i = 0, len = filterWords.length; i < len; i++) {
word = filterWords[i];
filterTemp.push(new RegExp("'b" + word + "'b"));
}
filter = new RegExp(filterTemp.source.join("|"), "gi");
return console.log("filter", filter);
您不需要在循环内部构造RegExp
,只需不断将字符串推入临时数组,然后在外部只使用join
一次即可构造RegExp
对象:
var filterWords = ['abc', 'foo', 'bar'];
var filterTemp = [];
for (i = 0, len = filterWords.length; i < len; i++) {
filterTemp.push("''b" + filterWords[i] + "''b");
}
filter = new RegExp(filterTemp.join("|"), "gi");
console.log("filter", filter);
//=> /'babc'b|'bfoo'b|'bbar'b/gi
2022年:
const validate = (val: string) => {
const errorMessage =
'Enter the time separated by commas. For example: 12:30, 22:00, ... etc.';
const values = val.split(',').map((val: string) => val.trim());
const filter = new RegExp(/^([0-1]?[0-9]|2[0-3]):[0-5][0-9]$/);
const isValid = values.some(
(value: string) => !filter.test(value),
);
return !isValid || errorMessage;
}
相关文章:
- 在mongoose中使用正则表达式在对象数组中进行查询搜索
- 如何将正则表达式包含到字符串数组中
- 加入Regex表达式数组
- 数组上的正则表达式
- 返回Javascript中给定正则表达式的文本范围数组
- Javascript if数组包含正则表达式字符串
- 使用正则表达式将字符串转换为javascript数组
- 为什么Angular视图中的数组表达式不起作用
- 我的Angular表达式不会从数组中获取数据
- 将正则表达式存储在数组中在 Javascript 中不起作用
- Javascript从某些元素中提取日期与匹配和正则表达式返回空数组
- jQuery 验证器正则表达式使用数组或变量
- 使用正则表达式检查数组条目
- 角度表达式从对象数组中的相等属性获取对象的属性
- 使用正则表达式将字符串与数组匹配
- 创建包含正则表达式匹配中所有组的数组的有效解决方案
- Javascript 正则表达式来匹配我的数组中的表情符号
- JavaScript 使用基于 json 数组的正则表达式替换字符串
- 这个 JavaScript 对象数组表达式 {}[] 是什么意思
- Javascript数组表达式