Perl正则表达式 模式匹配[通俗易懂]

Perl正则表达式 模式匹配[通俗易懂]m运算符与匹配修饰符含义i关闭大小写敏感性m将字符串作为多行处理o只编译模式一次。用于优化搜索流程s嵌入换行符时,将字符串作为单行处理x允许在正则表达式中提供注释,并忽略空白字符g全局匹配,即查找所有具体值。如果用于数组型上下文语境,则会返回一个列表;如果用于标量型上下文语境,则返回真或假s运算符与替换格式:s/ol

大家好,又见面了,我是你们的朋友全栈君。

m运算符与匹配

修饰符 含义
i 关闭大小写敏感性
m 将字符串作为多行处理
o 只编译模式一次。用于优化搜索流程
s 嵌入换行符时,将字符串作为单行处理
x 允许在正则表达式中提供注释,并忽略空白字符
g 全局匹配,即查找所有具体值。如果用于数组型上下文语境,则会返回一个列表;如果用于标量型上下文语境,则返回真或假

s运算符与替换

格式:

s/old/new/;
s/old/new/i;
s/old/new/g;
s+old+new+g;
s(old)/new/; s[old]{new};
s/old/expression to be evaluated/e;
s/old/new/ige;
s/old/new/x;

替换修饰符

修饰符 含义
e 将替换一侧作为表达式来求值
i 关闭大小写敏感性
m 将字符串作为多行处理
o 只编译模式一次。用于优化搜素流程
s 嵌入换行符时,将字符串作为单行处理
x 允许在正则表达式中提供注释,并忽略空白字符
g 全局匹配。即查找所有具体值

模式绑定运算符

格式

Variable = ~ /Expression/
Variable !~ /Expression/
Variable =~ s/old/new/

模式匹配运算符

示例 含义
$name =~ /John/ 如果$name含有模式则为真。如果有真,返回1.否则返回空值
$name !~/John/ 如果$name 不含有模式,则为真
$name =~s/John/Sam/ 将匹配John的第一个值替换为Sam
$name =~s/John/Sam/g 将匹配John的所有具体值替换为Sam
$name =~tr/a-z/A-Z/ 将所有小写字符翻译为大写字符
$name =~ /\$pal/ 在搜索字符串时使用变量
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/142836.html原文链接:https://javaforall.net

(0)
上一篇 2022年5月10日 下午6:00
下一篇 2022年5月10日 下午6:20


相关推荐

  • 一文说清楚pytorch和tensorFlow的区别究竟在哪里

    最近用了一点pytorch,想着稍稍理一下,这样一个和TensorFlow抗衡的一个框架,究竟是何方神圣?首先我们要搞清楚pytorch和TensorFlow的一点区别,那就是pytorch是一个动态的框架,而TensorFlow是一个静态的框架。何为静态的框架呢?我们知道,TensorFlow的尿性是,我们需要先构建一个TensorFlow的计算图,构建好了之后,这样一个计算图是不能够变的了…

    2022年4月5日
    102
  • linux两个文件修改主机名

    linux修改主机名的方法用hostname命令可以临时修改机器名,但机器重新启动之后就会恢复原来的值。#hostname//查看机器名#hostname-i//查看本机器名对应的ip地址

    2021年12月24日
    42
  • 深入理解Java虚拟机:垃圾收集

    深入理解Java虚拟机:垃圾收集概述    GC即垃圾回收,是指jvm用于释放那些不再使用的对象所占用的内存。    垃圾收集的目的在于清除不再使用的对象。gc通过确定对象是否被活动对象引用来确定是否收集该对象。两种常用的方法是引用计数和对象引用遍历。JVM的GC触发原理    JVM的GC主要是对堆内存的回收,一般把新生代的GC称为minorGC,把老年代的GC成为fullGC,所谓fullgc会先出发一次minor

    2022年5月14日
    35
  • 浅谈 Java 中的 Class 类

    浅谈 Java 中的 Class 类万事万物皆对象,类也是对象,是java.lang.class类的对象。理解了Class类,我么才能更好的理解Java的反射机制。

    2022年5月25日
    33
  • PyCharm激活成功教程方法收藏

    PyCharm激活成功教程方法收藏原文来自 http blog csdn net fx article details 自己收藏用 http idea lanyus com 不用验证码注册 server 选项里边输入 http elporfirio com 1017 不行再尝试 server 选项里边输入 http idea imsxm com

    2026年3月18日
    2
  • JAVA的网络编程基础概念建议收藏

    网络编程的目的就是指直接或间接地通过网络协议与其他计算机进行通讯。网络编程中有两个主要的问题,一个是如何准确的定位网络上一台或多台主机,另一个就是找到主机后如何可靠高效的进行数据传输。在TCP/IP协

    2021年12月20日
    42

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号