博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
如何匹配一个不包含特定字段的字符串
阅读量:6595 次
发布时间:2019-06-24

本文共 702 字,大约阅读时间需要 2 分钟。

1使用两次indexOf来判断

代码略

2使用相反意义的正则表达式

var case1 = "某某公司";var case2 = "某某合伙"; var case3 = "某某公司或合伙"; var case4 = "某某目标字符串"; var reg = /公司|合伙/; reg.test(case1); //true reg.test(case2); //true reg.test(case3); //true reg.test(case4); //false //写一个简单的函数组织一下 function notContains(opt) { return !reg.test(opt); }

3使用负向前瞻正则表达式

var reg = /^(?!.*(公司|合伙))(.*)$/;reg.test(case1); //falsereg.test(case2); //falsereg.test(case3); //false reg.test(case4); //true

解释一下正则:

  • 外层限定开始和结尾

var reg = /^$/
  • 负向前瞻

var reg = /^(?!.*(公司|合伙))$/

这个(?!.*(公司|合伙))只匹配位置,表明右边没有出现.*(公司|合伙)的情况就可以匹配。

(公司|合伙)是分支的意思。

  • 匹配任意字符

var reg = /^(?!.*(公司|合伙))(.*)$/

这样才可以匹配字符,没有这个(.*),上面的正则实际上和/^$/差不多。

转载于:https://www.cnblogs.com/chris-oil/p/6507314.html

你可能感兴趣的文章
JS字符串转换数字
查看>>
Journey源码分析二:整体启动流程
查看>>
七、MySQL中的字符集 - 系统的撸一遍MySQL
查看>>
使用IntelliJ IDEA开发SpringMVC网站(四)用户管理
查看>>
js 验证中文
查看>>
Linux下运行java DES AES加解密
查看>>
牛津词典 2018 年度词汇 ——「有毒」!
查看>>
Android Arcface人脸识别sdk使用工具类
查看>>
android studio单个工程文件的代理设置
查看>>
我的友情链接
查看>>
一行命令获取当前JVM所有可设置的参数以及当前默认值
查看>>
Linux mint 14下的powerDNS+mysql+powerAdmin搭建个性DNS域名解析服务器
查看>>
Red Hat EnterPrise Linux 5.4下web服务器的综合使用(普通站点、虚拟主机、安全性、...
查看>>
unbantu安装 mysql --- 百度云
查看>>
JS中的默认行为
查看>>
从oracle到mysql,主从到分库,一个普通项目数据库架构的变迁
查看>>
selenium层级定位及鼠标键盘操作
查看>>
SpringBoot跨域问题解决方案
查看>>
(转载)hibernate3.0配置文件模板
查看>>
46、练习:输出指定目录下的所有文件名称
查看>>