当前位置: 首页 > wzjs >正文

旅游网站系统wordpress免费seo

旅游网站系统wordpress,免费seo,php网站开发外文翻译,做网站哪便宜💡 正则表达式(Regular Expression, regex)知识点总结 💡 正则表达式是一种用于匹配字符串的模式,广泛用于搜索、替换、验证等操作。 📌 正则表达式的主要作用 1️⃣ 字符串匹配 🧐 检查一个…

💡 正则表达式(Regular Expression, regex)知识点总结 💡

正则表达式是一种用于匹配字符串的模式,广泛用于搜索、替换、验证等操作。


📌 正则表达式的主要作用

1️⃣ 字符串匹配 🧐

  • 检查一个字符串是否符合某种模式。
  • 例如,验证用户输入的邮箱手机号密码强度等。

2️⃣ 搜索和提取 🔍

  • 在大量文本中找到符合要求的内容。
  • 例如,从网页中提取URL、邮箱、电话号码等。

3️⃣ 字符串替换 🔄

  • 将符合规则的文本替换为指定内容。
  • 例如,把多个空格替换成一个空格

4️⃣ 数据格式化 ✏️

  • 规范化文本数据,如日期格式转换、去除特殊字符等。

5️⃣ 日志分析 📊

  • 通过正则表达式分析日志文件,提取错误信息IP 地址等重要数据。

📌 正则表达式的基础

  1. 普通字符匹配

    • abc 只能匹配 "abc",不会匹配 "aabc""abcd" 等。
  2. 特殊字符(元字符)

    元字符含义示例
    .任意单个字符(换行符除外)"a.c" 可匹配 "abc""aac"
    \d数字 [0-9]"12\d" 可匹配 "123""125"
    \w字母、数字或下划线 [a-zA-Z0-9_]"\w+" 可匹配 "hello123"
    \s空白字符(空格、制表符、换行符)"a\sb" 可匹配 "a b"
    \b单词边界"\bcat\b" 匹配 "cat" 但不匹配 "catalog"
    ^匹配行首"^abc" 只匹配 "abc" 在行首的情况
    $匹配行尾"xyz$" 只匹配 "xyz" 在行尾的情况

📌 量词(控制匹配次数)

量词含义示例
*匹配 0 次或多次a* 匹配 """a""aaaa"
+匹配 1 次或多次a+ 匹配 "a""aaaa",但不匹配 ""
?匹配 0 次或 1 次a? 匹配 """a"
{n}匹配 na{3} 仅匹配 "aaa"
{n,}至少匹配 na{2,} 匹配 "aa""aaa"
{n,m}匹配 nma{2,4} 匹配 "aa""aaa""aaaa"

📌 字符类(Character Classes)

语法含义示例
[abc]只匹配 abcgr[ae]y 可匹配 "gray""grey"
[^abc]a、b、c 以外的任何字符"[^aeiou]" 匹配所有辅音字母
[0-9]匹配 0~9 的任何数字"[0-9]+" 匹配 "123""456"
[a-z]匹配小写字母"[a-z]+" 匹配 "hello"
[A-Z]匹配大写字母"[A-Z]+" 匹配 "HELLO"

📌 逻辑运算符

语法含义示例
``逻辑 OR(或)
()分组"(ab)+" 可匹配 "ab""abab"
(?:...)非捕获分组"(?:ab)+" 仅匹配 "abab",但不存储匹配内容

📌 零宽断言

✨ 下面是正则表达式中 (?=) 等相关的零宽断言的作用和示例,整理成表格供你参考 📜👇

表达式名称 🏷作用 💡示例
(?=...)正向先行断言匹配当前位置,后面必须满足 ... 的条件,但不消耗字符\d(?=px) 匹配**5px 中的 5**,但不匹配 5em
(?!...)负向先行断言匹配当前位置,后面不能...\d(?!px) 匹配 5em5,但不匹配 5px
(?<=...)正向后行断言 🔄匹配当前位置,前面必须满足 ...(?<=\$)\d+ 匹配**$100 中的 100**,但不匹配 USD100
(?<!...)负向后行断言 🚫匹配当前位置,前面不能...(?<!\$)\d+ 匹配 USD100100,但不匹配 $100

💡 小贴士

  • 先行断言(?=...) & (?!...)检查后面的字符,但不消耗它们。
  • 后行断言(?<=...) & (?<!...)检查前面的字符,但不消耗它们。
  • 断言是零宽匹配(不占字符),用于复杂匹配规则!

📌 贪婪模式与懒惰模式

在正则表达式中,贪婪模式(Greedy Mode)指的是匹配时尽可能多地匹配字符。

例如:

  • a.*b"acbcb" 上的贪婪匹配结果是 "acbcb"(尽可能匹配最长的内容)。
  • 如果使用 懒惰模式(Lazy Mode)a.*?b,则匹配的结果是 "acb"(尽可能匹配最短的内容)。

贪婪匹配(Greedy Match)VS 懒惰匹配(Lazy Match)

模式符号行为
贪婪匹配(Greedy).*尽可能多地匹配
懒惰匹配(Lazy).*?尽可能少地匹配
占有匹配(Possessive).*+一次性匹配,不回溯

💡 记住:贪婪(Greedy)匹配会尽可能多地匹配字符,而懒惰(Lazy)匹配会尽可能少地匹配字符。🚀

📌 捕获分组与非捕获分组

📌 常见正则表达式

1️⃣ 匹配邮箱 📧:

^[a-zA-Z0-9_.+-]+@[a-zA-Z0-9-]+\.[a-zA-Z0-9-.]+$

✅ 可匹配 "test.email@example.com"

2️⃣ 匹配手机号 📱(以中国手机号 1 开头):

^1[3-9]\d{9}$

✅ 可匹配 "13812345678"

3️⃣ 匹配 IP 地址 🌐:

^(25[0-5]|2[0-4][0-9]|1?[0-9]?[0-9])\.
(25[0-5]|2[0-4][0-9]|1?[0-9]?[0-9])\.
(25[0-5]|2[0-4][0-9]|1?[0-9]?[0-9])\.
(25[0-5]|2[0-4][0-9]|1?[0-9]?[0-9])$

✅ 可匹配 "192.168.1.1"

4️⃣ 匹配日期(YYYY-MM-DD) 📆:

^(19|20)\d\d-(0[1-9]|1[0-2])-(0[1-9]|[12][0-9]|3[01])$

✅ 可匹配 "2024-03-14"


📌 Java 正则表达式示例

import java.util.regex.*;public class RegexExample {public static void main(String[] args) {String text = "hello regex 123!";String pattern = "\\d+"; // 匹配数字Pattern p = Pattern.compile(pattern);Matcher m = p.matcher(text);while (m.find()) {System.out.println("匹配到: " + m.group());}}
}

🔹 输出

匹配到: 123

📌 小结

正则表达式的核心知识点
元字符(特殊字符). \d \w \s ^ $
量词* + ? {n,m}
字符类[abc] [a-z] [^0-9]
逻辑运算| ()
常见应用:邮箱、手机号、IP 地址等

http://www.dtcms.com/wzjs/175074.html

相关文章:

  • 一个单位网站被黑该怎么做百度竞价开户3000
  • 网站效果案例广州网站设计实力乐云seo
  • 网站副标题wordpress自助建站网站
  • 企业电商网站优化全网推广代理
  • 交互式网站有哪些功能域名交易平台
  • 兰州电商平台网站建设猪肉价格最新消息
  • 大连哪家公司做网站比较好世界新闻最新消息
  • 个人网站建设价格表谷歌外链
  • 做钓鱼网站犯法吗网络热词2022
  • 网站管理员怎么做微信营销平台哪个好
  • 潍坊市房屋和城乡建设局网站百度指数入口
  • 织梦网站后台密码郑州网络推广方案
  • 优秀网站建设设计微信指数官网
  • 广州大石附近做网站的公司软文营销的特点
  • 承接网站建设 优帮云上海抖音seo
  • 网站怎么利用朋友圈做推广关键词排名优化价格
  • 怎么给网站加在线客服软件优化
  • 自己做的网站上怎么编辑滚动窗口网络营销师官网
  • 美食网站开发与设计文献综述深圳seo推广公司
  • 泾玛网 武汉营销型网站建设nba今日最新消息
  • 太原市做网站好的科技公司国外网站怎么推广
  • 微信app安卓优化大师2021
  • 枣庄住房和城市建设局网站如何建立企业网站
  • 网络工程专业主要学什么seo站内优化站外优化
  • 网站开发设计制作合同企业网络营销青岛
  • js网站源码上海网络排名优化
  • 上海专业网站建设精英网络营销计划书怎么写
  • 厦门自主建站模板超级优化空间
  • 记事本做网站表格seo和sem的联系
  • .net网站搭建某产品网络营销推广方案