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

建门户网站要多少钱背景图片设计在线制作

建门户网站要多少钱,背景图片设计在线制作,wordpress长期未更新提醒,建站优化内容正则表达式是一种强大的文本模式匹配工具,它使用一种特殊的语法来描述要搜索或操作的字符串模式。在 Java 中,我们可以使用 java.util.regex包提供的类来处理正则表达式。 :::color3 正则表达式不止 Java 语言提供了相应的功能,很多其他语言…

正则表达式是一种强大的文本模式匹配工具,它使用一种特殊的语法来描述要搜索或操作的字符串模式。在 Java 中,我们可以使用 java.util.regex包提供的类来处理正则表达式。

:::color3
正则表达式不止 Java 语言提供了相应的功能,很多其他语言都提供了对其的支撑,比如:Python、Javascript

:::

正则表达式

简单来说,正则表达式就是一个由特殊字符(称为元字符)和普通字符组成的字符串,用来定义一个搜索模式。这个模式可以用来匹配、查找、替换符合特定规则的文本。

例如,模式 \d+ 可以匹配一个或多个数字,模式 [a-z]+ 可以匹配一个或多个小写字母。

常用的元字符:

比如,这是一个匹配大多数邮箱地址的正则表达式:

^[\w\-\.]+@([\w\-]+\.)+[\w\-]{2,4}$
  1. ^
  • 匹配输入的 开始位置
  1. [\w\-\.]+
  • 匹配邮箱的 用户名部分(@ 前面)。
  • [\w\-\.] 表示可以是以下任意一个字符:
    • \w:等价于 [a-zA-Z0-9_](字母、数字或下划线)
    • \-:减号(-
    • \.:点号(.
  • + 表示上面的字符可以重复出现 1 次或多次。
  1. @
  • 邮箱地址中的 @ 符号,用作用户名和域名的分隔。
  1. ([\w\-]+\.)+
  • 匹配域名部分中前面的部分(例如:mail.google.)。
  • [\w\-]+:一个或多个字母、数字、下划线或减号。
  • \.:一个点号。
  • (...) +:这个结构可以出现一次或多次,表示可以匹配像 abc.mail.google. 等。
  1. [\w\-]{2,4}
  • 匹配最后的顶级域名(如 comnetorg)。
  • 范围 {2,4} 表示:2 到 4 个字符之间。
  • 允许的字符:字母、数字、下划线、减号。
  1. $
  • 匹配输入的 结束位置

可以在这个网站方便的看到正则表达式的匹配情况:

https://www.mklab.cn/utils/regex

Java 中使用正则表达式

Java 中使用正则表达式的步骤

  1. 创建 **Pattern** 对象: 使用 Pattern.compile(String regex) 编译正则表达式。
  2. 创建 **Matcher** 对象: 使用 pattern.matcher(CharSequence input)Pattern 对象应用于输入字符串。
  3. 进行匹配操作: 使用 Matcher 对象的方法进行查找、匹配和替换等操作。

比如,我们使用上面的邮箱的正则表达式判断字符串是不是一个邮箱地址:

Pattern pattern = Pattern.compile("[\\w\\-\\.]+@([\\w\\-]+\\.)+[\\w\\-]{2,4}");
Matcher matcher1 = pattern.matcher("111111111@qq.com");
System.out.println(matcher1.matches()); // trueMatcher matcher2 = pattern.matcher("123ab");
System.out.println(matcher2.matches()); // false

:::color3
在 Java 字符串中,反斜杠 \ 是一个特殊字符,用于转义。因此,在正则表达式中要表示字面意义的反斜杠,需要使用双反斜杠 \\。例如,要匹配一个点号 .,正则表达式应该是 \.,但在 Java 字符串中需要写成 "\\."

:::

Matcher 类的常用方法:

方法名作用
matches()尝试将整个输入序列与该模式匹配。只有当整个输入序列完全匹配模式时才返回 true
find()尝试查找与该模式匹配的输入序列的下一个子序列。如果找到匹配项,则返回 true。可以多次调用 find() 来查找所有匹配项
group()返回由上一次匹配操作所匹配的子序列。如果匹配成功,group(0) 返回整个匹配的子串。如果正则表达式中包含分组(用括号 () 包围),可以使用 group(n) 来获取第 n 个分组匹配的子串(索引从 1 开始)
start()返回上一次匹配的起始索引
end()返回上一次匹配的结束索引(不包含)
replaceAll(String replacement)将输入序列中所有匹配该模式的子序列替换为指定的 replacement 字符串。返回一个新的字符串
replaceFirst(String replacement)将输入序列中第一个匹配该模式的子序列替换为指定的 replacement 字符串。返回一个新的字符串

下面是一个使用正则表达式从字符串中统计 Hello 出现次数的例子,每次还打印了找到的 Hello 在字符串中的开始下标(包含)和结束下标(不包含):

import java.util.regex.Matcher;
import java.util.regex.Pattern;public class RegexMatches {public static void main( String[] args ){final String REGEX = "\\bHello\\b";final String INPUT = "Hello world,Hello Tomcat,Hello Java";Pattern p = Pattern.compile(REGEX);Matcher m = p.matcher(INPUT); // 获取 matcher 对象int count = 0;while (m.find()) {count++;System.out.println("Match number " + count);System.out.println("start(): " + m.start());System.out.println("end(): " + m.end());}}
}

String 类提供了一些方便的方法,入参可以使用正则表达式:

方法名作用
matches(String regex)判断字符串是否完全匹配给定的正则表达式
split(String regex)根据给定的正则表达式将字符串分割成字符串数组
replaceAll(String regex, String replacement)将字符串中所有匹配给定的正则表达式的子字符串替换为指定的 replacement 字符串
replaceFirst(String regex, String replacement)将字符串中第一个匹配给定的正则表达式的子字符串替换为指定的 replacement 字符串

下面是使用 String 类的 replaceAll 方法将所有的数字替换为 * 的例子:

String text = "Hello 123 World 456";
String result = text.replaceAll("\\d+", "***"); // Hello *** World ***

文章转载自:

http://yvgDauoF.rzdpd.cn
http://eGNqZe9x.rzdpd.cn
http://13DBdIm4.rzdpd.cn
http://iUmtXc2U.rzdpd.cn
http://loWpVWeW.rzdpd.cn
http://09MvAAQY.rzdpd.cn
http://AAROyLEM.rzdpd.cn
http://xg1VrN2l.rzdpd.cn
http://tjZlzq1p.rzdpd.cn
http://Ak8YDO4w.rzdpd.cn
http://yrVrCH0G.rzdpd.cn
http://1ElfuCfe.rzdpd.cn
http://3x6C1Zg3.rzdpd.cn
http://xp8czkXv.rzdpd.cn
http://D6xfMzUc.rzdpd.cn
http://JfWKDpnT.rzdpd.cn
http://mGx2Z8w8.rzdpd.cn
http://KjPHTGjY.rzdpd.cn
http://bqPLzyCL.rzdpd.cn
http://rQ0x1Juf.rzdpd.cn
http://bdqJPQtW.rzdpd.cn
http://AKUsdRiS.rzdpd.cn
http://ZwFRzTpb.rzdpd.cn
http://vw4sZQjJ.rzdpd.cn
http://wYgf7W7q.rzdpd.cn
http://fJpcMijI.rzdpd.cn
http://W0AWTthY.rzdpd.cn
http://0IAcnpMN.rzdpd.cn
http://D5mKuKwv.rzdpd.cn
http://xLk7IWkr.rzdpd.cn
http://www.dtcms.com/wzjs/653527.html

相关文章:

  • 影楼手机网站设计成都公司做网站多少钱
  • 网站开发合同属于知识产权类吗开发一个公众号多少钱
  • 网络优化网络维护网络建站南宁做网站价格
  • 深圳网站设计价格网站开发和维护
  • 平顶山哪里有做网站的公司鹿泉区住房建设局网站
  • 果酷网的网站建设简介网站建设 笔记
  • 成都网站开发培训软件技术专业主要学什么
  • 长期网站外包类似聚划算的网站怎么建设
  • asp网站伪静态页面尤溪住房和城乡建设局网站
  • 前端招聘去哪个网站金湖县住房和城乡建设局网站
  • 律师个人 网站做优化wordpress如何写文章
  • 上外国网站用什么dns网站建设网页设计案例
  • 安徽伟诚建设工程有限公司网站网站正在建设页面模板
  • 做地图的网站搬瓦工wordpress
  • 南昌seo关键词排名佛山seo优化
  • 洛阳seo网站建立健全安全生产责任制和安全生产规章制度
  • 贵溪市城乡建设局网站seo分析师
  • 应该双网站无需注册免费的网站
  • 10G网站空间百度seo是啥
  • 正规的百度快排seo扬中企业网站优化哪家好
  • 衣柜 技术支持 东莞网站建设网站开发排行
  • 廊坊做网站优化的公司网站建设的相关新闻
  • 旅游电子商务网站建设技术规范wordpress案例
  • 租用网站如何制作网页长沙谷歌seo
  • 如何用vs的c 做网站产品网站做营销推广
  • 北外新闻行业门户网站建设做设计的一般在什么网站找素材
  • 公司网站维护由那个部门做文字logo免费设计在线生成
  • 做外贸 是否需要做中文网站wordpress企业仿站视频教程
  • 四川做网站的公司北京网站制作费用
  • 网站开发用什么系统比较好?公司网站做好了还需