繁体   English   中英

检查字符串是否包含特定单词以外的内容

[英]Check whether string contains other than specific word

我需要检查字符串是否包含指定单词/句子(javascript)以外的内容,如果:

  • 它包含一个字母,除了这个短语: ANOTHER CMD
  • 它包含除指定的多个数字序列外,例如: ["8809 8805", "8806 8807"] (这些数字是我应该能够测试任何数字数组的字符串的示例)

谢谢!

是的,您可以替换所有不在数组中的

 const arr = ["ANOTHER CMD","8809 8805", "8809 8805"] const okContent = str => { arr.forEach(entry => str = str.replaceAll(entry,"")) return str.trim()===""; }; console.log(okContent('Has other stuff than ANOTHER CMD and 8809 8805')) console.log(okContent('8809 8805 ANOTHER CMD 8809 8805'))

我不知道这是否是正确的做法,但这对我有用:

  • 用 balnk 替换所有有效单词(使用replace
  • 检查字符串是否为空
  • 如果它为空,则意味着该字符串不包含任何不需要的字符串(要检查空间,您可以使用trim方法)

你可以试试正则表达式!

使用您的字符串数组作为“|” 分离的正则表达式值

并检查给定行中的指定字符串。 如果它呈现否定输出。

 const regex = /(ANOTHER CMD|8809 8805|8806 8807)/i console.log(!regex.test('Should not contain word ANOTHER CMD')) console.log(regex.test('Should contain word ANOTHER CMD'))

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM