正则表达式的一些高级用法

  1. 不允许出现某个单词,使用?!
    (?!Pattern).\.matches
    表示.matches之前的不能是Pattern
  2. 非贪婪匹配,在匹配项后加?
    matches\((.*?)\)
    这里在.*后加问号,表示尽可能少的匹配。
  3. \w表示字母、数字和下划线
  4. 防范redos攻击,可使用Cyber-Redos-Terminator检查开发使用的正则表达式。java代码里排查可能的redos攻击,可使用下面三个正则式:
python 复制代码
    REG_CALL_PAT1 = re.compile("Pattern\\.compile\\((.*)\\)")
    REG_CALL_PAT2 = re.compile("Pattern\\.matches\\((.*),.*\\)")
    REG_CALL_PAT3 = re.compile('(?!Pattern).\\.matches\\((".*"|[\\w\\.]+)\\)')
相关推荐
XiaoQiao66699916 小时前
pytnon中正则表达式小题详解
python·正则表达式
gCode Teacher 格码致知16 小时前
Python基础教学:正则表达式中的忽略大小写以及符号“-“的问题-由Deepseek产生
python·正则表达式
ths5122 天前
Python 正则表达式实战指南:从入门到精通(12 个高频案例)(三)
python·正则表达式
ths5122 天前
Python 正则表达式学习笔记(小白超详细版)(一)
python·正则表达式
kcuwu.4 天前
Python 正则表达式从入门到实战
数据库·python·正则表达式
羊小蜜.4 天前
Mysql 07: 正则表达式查询(REGEXP)全解
数据库·mysql·正则表达式
Dxy12393102164 天前
正则表达式如何匹配提取文章日期
数据库·mysql·正则表达式
Dxy12393102167 天前
Python正则表达式判断姓名:详细解析
python·mysql·正则表达式
一个小猴子`9 天前
快速了解正则表达式
正则表达式
禾小西9 天前
Java中使用正则表达式核心解析
java·python·正则表达式