摘要:我的博文地址最近有一个需求,要求是判断某个字符串不以什么开头。对于向前匹配,出现在指定项后面的字符序列不会被正则表达式返回。
我的博文地址: https://www.luoyangfu.com/art...
最近有一个需求,要求是判断某个字符串不以什么开头。然后就开始探索这个不以什么开头和不易什么结尾的正则怎么写,why?
不以某字符串开头这里需要提一个概念叫 否定式前项匹配 这个东东。
向前匹配根据匹配的字符序列后面存在一个特定的字符序列或者不存在一个特定的序列来决定是否匹配。对于向前匹配,出现在指定项后面的字符序列不会被正则表达式返回。
这里说后面存在一个特定字符序列, 也称之为肯定式向前查找
不存在一个特定的序列,也称之为否定式向前查找
这两个概念后续再深入
开始解决这个问题不以某字符串开头:
^(?!str)
这里使用了下面几个元符号:
^ 判断是否是开头
?! 这里是否定向前查询
示例:
不以test 开头字符串
/^(?!test).*/不以某字符串结尾
这里要说一个概念叫 否定式向后匹配,前面说了向前匹配,想后匹配呢?
向后匹配一个要匹配的字符串序列前面有或者没有指定的字符串序列
这里有指定字符串序列也叫 肯定式向后匹配
这里没有指定字符串序列也叫 否定式向后匹配
这两个概念后续深入
解决不以某字符串结尾:
(?这里用了如下几个符号:
? 否定式向后查询
$ 是否结尾
示例:
不以 end 结尾
/.*(? 收集几个 ? 元字符用法(?:str) 非捕获组 (?=str) 肯定式向前查找 (?!str) 否定式向前查找 (?<=str) 肯定式向后查找 (?参考地址:
https://blog.csdn.net/LinBili...
https://blog.csdn.net/libingx...
文章版权归作者所有,未经允许请勿转载,若此文章存在违规行为,您可以联系管理员删除。
转载请注明本文地址:https://www.ucloud.cn/yun/109757.html
摘要:好处是用于断言的字符串是一个表达式,通过可以写任意多组字符串。该正则式断言行尾之前的字符串不是。 之前写 Webpack 配置的时候遇到这样一个问题: 通过 /.(jpg|png|svg|gif|webp)$/ 判断图片文件,如果符合条件则将其储存至 images 目录下。然而这样做会把类似 fontawesome-webfont.svg 和 glyphicons-halflings-...
摘要:简述正则表达式是处理字符串的利器,并提高工作效率,一个好的正则能够帮我们省去几十甚至上百行代码。 简述 正则表达式是处理字符串的利器,并提高工作效率,一个好的正则能够帮我们省去几十甚至上百行代码。在工作中,也许你会见到在代码中出现很多正则处理字符串,也可能见到代码中毫无正则,原因在于会正则的人往往处理字符串首先想到用正则去处理,不会的那必然用很多API处理。并且在面试的时候很多同学往往...
摘要:将模式视为序列点的序列粘性匹配仅匹配目标字符串中此正则表达式的属性指示的索引并且不尝试从任何后续的索引匹配。 http://regex.zjmainstay.cn/ https://regexper.com/https://regexr.com/https://regex101.com/https://regexr.com/ RegEx用来处理字符串 构建正则表达式的方法 let re...
摘要:把字符串中符合正则的规则捕获到,捕获。在对象中获取出现最多次数,把出现最多字符拿出。在一个对象获取最大值假设法在数组中获取最大值排序。表示严格匹配非贪婪性把问号放在量词后边正则的特点懒惰,贪婪。 正则基础 定义:它就是一个规则,用来处理字符串的一个规则 用来处理字符串的一个规则 (正则只能处理字符串) 判断一个字符串是否符合制定的规则 regexp.test(string) ,匹配。...
阅读 1396·2023-04-26 03:04
阅读 2337·2019-08-30 15:44
阅读 3730·2019-08-30 14:15
阅读 3510·2019-08-27 10:56
阅读 2714·2019-08-26 13:53
阅读 2617·2019-08-26 13:26
阅读 3076·2019-08-26 12:11
阅读 3611·2019-08-23 18:21