js判断是否包含某些字符串中的一个

被判断的字符串是由逗号和中文拼接成的字符串,
编写一个js来校验一个字符串是否包含“纪委书记”,“纪检专岗”,“纪律检查室主任”,判断是否包含这三个字符串中的一个,包含其中一个就为true,多字少字都不算包含,如 纪检专岗人员 不算包含在内,

使用正则表达式来判断一个由逗号和中文组成的字符串是否精确包含 “纪委书记”,“纪检专岗”,“纪律检查室主任” 中的一个词,而且要求这个词是一个完整的词,不能被其他字符包含。

// 定义关键词列表
const keywords = ['纪委书记', '纪检专岗', '纪律检查室主任'];

// 构建正则表达式,使用非捕获组和 alternation 来组合关键词
// \b 是单词边界断言,确保关键词作为一个完整的词出现
const regex = new RegExp(keywords.map(kw => `\\b${kw}\\b`).join('|'));

// 被判断的字符串
const testString = '党委书记,纪委书记,工会主席';

// 检查字符串是否包含关键词列表中的任何一个词
const containsKeyword = regex.test(testString);

// 输出结果
console.log(containsKeyword); // 如果包含任何一个关键词,结果为 true,否则为 false

在这个代码片段中,我们首先定义了一个包含所有关键词的数组 keywords。然后我们使用 map 函数遍历这个数组,为每个关键词构建一个正则表达式的模式,其中 \b 表示单词边界,确保关键词作为一个独立的词出现。使用 join(‘|’) 方法将所有关键词的正则表达式模式组合在一起,形成一个大的正则表达式,其中 | 符号表示 alternation(或),意味着可以匹配任何一个关键词。

最后,我们使用 test 方法来检测 testString 是否包含关键词列表中的任何一个词。如果至少匹配一个词,containsKeyword 变量将为 true,否则为 false。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

见未见过的风景

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值