首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

PHP正则中的捕获组与非捕获组

今天遇到一个正则匹配的问题,忽然翻到有捕获组的概念,手册上也是一略而过,百度时无意翻到C#和Java中有对正则捕获组的特殊用法,搜索关键词有PHP时竟然没有相关内容,自己试了一下,发现在PHP中也是可行的...,于是总结一下,分享的同时也希望有大神和细心的学习者找到我理解中出现的问题。...,捕获组是正则表达示中以()括起来的部分,每一对()是一个捕获组。...捕获组的忽略与命名 我们还可以阻止PHP为匹配组的编号:在匹配组中模式前加  ?: $mode = '/a=(\d+)b=(?...非捕获组的用法: 为什么称为非捕获组呢?那是因为它们有捕获组的特性,在匹配模式的()中,但是匹配时,PHP不会为它们编组,它们只会影响匹配结果,并不作为结果输出。 /d(?

2K90

Java 正则表达式的捕获组

捕获组分为: 普通捕获组(Expression) 命名捕获组(?Expression) 普通捕获组 从正则表达式左侧开始,每出现一个左括号"("记做一个分组,分组编号从 1 开始。...命名捕获组 每个以左括号开始的捕获组,都紧跟着 ?,而后才是正则表达式。 对于时间字符串:2017-04-25,表达式如下: ? 有 4 个命名的捕获组,分别是: ?...命名的捕获组同样也可以使用编号获取相应值。 ? PS 非捕获组 在左括号后紧跟 ?:,而后再加上正则表达式,构成非捕获组 (?:Expression)。...这个正则表达式虽然有四个左括号,理论上有 4 个捕获组。但是第一组 (?:\d{4}),其实是被忽略的。当使用 matcher.group(4) 时,系统会报错。 ? ?...总结 ▼ 普通捕获组使用方便; 命名捕获组使用清晰; 非捕获组目前在项目中还没有用武之地。

1.2K30
  • 您找到你想要的搜索结果了吗?
    是的
    没有找到

    浅谈单细胞转录组测序中的捕获效率提升

    在之前《单细胞转录组方法篇——下》有提到,单细胞技术的发展实际上源于不用技术之间的交叉排列组合,没想到这次是Split-seq和油包水的技术结合在一起。...腔室的入口、细胞捕获位点和珠子捕获位点可以通过由气动控制的不同Quake阀选择性地关闭,以进行细胞和珠子的配对操作。...2020年4月,同样发表在Nature Communications上的,由国内杨超勇课题组发布的Paired-seq,也是使用了流体动力学陷阱的方式,进行高效率的单细胞珠子配对测序。...下图为杨朝勇课题组在2020年12月发表于SCIENCE ADVANCES上Digital-WGS平台,对单细胞进行高效自动的全基因组测序。...该平台具有通量大,并行能力强,操控自由度高的特点,在小腔室中可以完成一系列包括转录组捕获,蛋白捕获或检测,代谢物检测等功能。

    2.3K20

    JS的事件冒泡和捕获

    W3C event model |------------------------------------------- 但是有一个特例:如果给body中的子节点同时注册冒泡和捕获事件...'}, true) 当点击innner元素时,如下元素发生了: 点击事件开始于捕获阶段,在此阶段浏览器会在所有祖先元素上查找点击事件处理函数(从document开始) 结果找到了2个,分别在document...和outer上面,而且这两个事件处理函数的useCapture选项为true,说明他们被注册在捕获阶段的。...于是,document和outer的点击处理函数被执行 继续向下寻找,直到到达inner元素本身,捕获阶段就此结束。...此时进入冒泡阶段,inner上的时间处理器得到执行 事件命中元素后开始向上冒泡,一路查找是否注册了冒泡阶段的祖先元素上的时间处理器。由于没有找到因此什么也没发生。

    2.6K20

    C++:异常的捕获和处理

    try    : try 块中的代码标识将被激活的特定异常,它后面通常跟着一个或多个 catch 块。 如果有一个块抛出一个异常,捕获异常的方法会使用 try 和 catch 关键字。...如果一直到main函数都没有捕获到异常(catch捕获的类型和抛出异常的类型匹配不上),那么程序就会被强制终止 double Division(int len, int time) { if (time...) { cout << "未知错误" << endl; } return 0; }  5、实际中抛出和捕获的匹配原则有个例外,并不都是类型完全匹配,可以抛出的派生类对象, 使用基类捕获,这个在实际中非常实用...3、C++中异常经常会导致资源泄漏的问题,比如在new和delete中抛出了异常,导致内存泄 漏,在lock和unlock之间抛出了异常导致死锁,C++经常使用RAII来解决以上问题。  ...但是实际上并不是我们所想象的那么美好。  四、自定义异常体系   抛异常在工程中非常常见,但是实际工作中可能是会存在以下问题的: (1)一个工程可能是非常巨大的,会有多个人去编写。所以难以统一规范。

    21000

    CSS3 Media Queries在iPhone4和iPad上的运用

    CSS3 Media Queries的介绍在本站上的介绍已有好几篇文章了,但自己碰到的问题与解决的文章还是相对的较少。同一个项目,为了实现iPhone和iPad横板与竖板的风格,让我还是头疼了一翻。...一开始按照CSS3 Media Queries模板中的介绍来运用,虽然帮我解决了iPad的横板与竖板的风格渲染问题,但在iPhone4上还是存在问题的。...但在iPhone4上依然存在一个怪异的现象:当你iPhone4加载页面是用横板加载,再旋转到竖板,不会存在任何问题,而且显示也是蛮正常的。...在iPhone4和iPad的横竖板下都能正常让表单居中显示。 ?...那么以后大家在iPhone4和iPad设备上,就可以按照横竖板来定样式了: 1、iPhone4竖板 @media only screen and (-webkit-min-device-pixel-ratio

    78730

    Windows 监控 iPhone 上的 HTTP 访问记录

    有些测试场景需要知道在真实实体手机上访问我们开发的页面时产生了哪些不同的请求、访问了哪些链接。这个事情在 Windows 上做起来很简单,工具也有很多。...安装完成后打开,默认情况下它会监控我们 Windows 本机的访问记录。 ? 接下来我们来配置一下代理,让我们的 iPhone 来连接。点击 Proxy->Proxy Setting 菜单: ?...此时就已经开启了代理,你需要看一下你的 IP 地址,好让 iPhone 来连接。 ?...打开 iPhone,将网络和你电脑连接到一个内网中,在 WIFI 设置中,点击 WIFI 名字右侧的叹号,进入设置页面并点击最下方的代理设置。 ?...修改为手动配置,输入你电脑的 IP 地址和端口号 8888 ? 此时就已经配置好了,当你确定设置并返回的时候,你会看到 Charles 的窗口弹出了一个提示框,提示你是否允许这个连接。 ?

    1.2K20

    kafka的消费者组(上)

    【消费者组的原理深入】 1. group coordinator的概念 在早期版本中(0.9版本之前),kafka强依赖于zookeeper实现消费者组的管理,包括消费者组内的消费者通过在zk上抢占znode...节点来决定消费哪些分区;注册消费者组和broker相关节点的监听,以感知环境的变化进而触发rebalance;另外就是offset也维护在zk中。...消费者与broker的交互流程 消费者组中消费者与broker之间的交互流程如下图所示: 1)首先,和所有客户端的逻辑一样,先向服务端请求元数据信息 2)接着向服务端请求消费者组的coordinator...具体实现,服务端是通过在心跳中给leader对应的消费者一个错误信息,消费者在捕获该错误信息后,触发重新加入消费者组,之后复用之前的流程, 即在加入消费者组的请求响应中,告知消费者组中消费者的情况,leader...同样实测情况与直观的图示如下: StickyAssignor是在kafka的0.11版本引入的,其设计目的主要有两个: 分区分配尽量平均 当分区重新分配时,尽量与上一次的分配保持一致,也就是尽量少的做改动

    93720

    应用|iPhone上的这个来自Mac的照片怎么删?

    整理一篇自己在知乎上2018年发布的实用贴回答,得到了很多人的实用肯定。 有这个回答的原因是之前发现自己的iPhone上多出来了一个相册,名字为“来自我的Mac”。...一开始如无头苍蝇一样茫然,因为这个相册里的照片只能编辑、分享,不能删除,总感觉iPhone的存储被消耗了。...Note:如果是有类似“来自我的电脑”,这个是从windows系统同步的,只需在Windows上按照上述步骤操作即可。...如果是使用较新版macOS,你会发现iTunes已经没有了,而且官网也只有针对windows的下载链接,不要慌张和彷徨,因为新版macOS已经将iTunes的功能合并到了访达(Finder),所以手机链接...的照相图片库的按钮关掉。

    14.7K20

    异常捕获中finally和return的用法

    目录 1、验证 finally 和 return 的执行顺序 1.1、try语句正常执行 1.2、try语句执行异常 2、通过finally块修改返回变量 2.1、基本数据类型,try语句正常执行 2.2...、基本数据类型,try语句执行异常 2.3、引用数据类型,try语句执行正常 2.4、引用数据类型,try语句执行异常 3、结论 ---- 1、验证 finally 和 return 的执行顺序 1.1...总结: 由此可见,当 try或catch块中带有return语句时,和没有return时一样,都在执行完本块所有语句后,跳转到 finally 中,当执行完 finally 语句块后,才返回最终执行结果...,但并没有生效,最终返回的还是带有 return 语句 try 块中的执行结果。...,可以看到在最终的返回结果中,数组第一个元素是在 finally 修改的数据。

    78620

    如何捕获和处理HTTP GET请求的异常

    特别是,GET请求是Web开发中最常见的请求类型之一。然而,网络请求可能会因为多种原因失败,比如网络问题、服务器错误、或者请求超时等。因此,有效地捕获和处理这些异常对于构建健壮的应用程序至关重要。...本文将介绍如何在不同的编程环境中捕获和处理HTTP GET请求的异常,包括Python、JavaScript、Java、C#等,并提供相应的代码示例。...本文将介绍如何在不同的编程环境中捕获和处理HTTP GET请求的异常,并展示如何在代码中设置代理信息。我们将涵盖Python、JavaScript、Java、C#等语言,并提供相应的代码示例。...如果请求成功,我们打印出成功消息和响应内容。如果请求失败,我们捕获并打印出异常信息。总结捕获和处理HTTP GET请求的异常是确保网络应用程序健壮性的重要步骤。...本文介绍了如何在不同的编程环境中捕获和处理HTTP GET请求的异常,并展示了如何在代码中设置代理信息。

    15110

    iPhone 检测 iPhone X 设备的几种方式和分辨率终极指南

    从图中数据我们可以总结以下几点: 5.8 英寸的 iPhone X/XS 与 6.1 英寸的 iPhone XR 和 6.5 英寸的 iPhone XS Max 的屏幕宽高比是一致的,约为 0.462;...---- 适配新的 iPhone X 设备 此外,我们发现,对于未进行新屏幕尺寸适配的工程,直接编译,在新设备 iPhone XR 和 iPhone XS Max 上运行,它们是以放大模式自动适配的(以...备注:这里所说的 iPhone X 泛指上述介绍的屏幕大小为 5.8、6.1、6.5 英寸三种尺寸,且带有顶部刘海和底部操作条的 iPhone 设备。...后面我们想了一个简便的方法,即获取屏幕的宽度和高度,取较大一方进行比较是等于 812.0 或 896.0,代码如下: 方式三:通过底部安全区域的高度来判断 在去年 iPhone X 发布后,为了适配顶部的浏览和底部的操作条...,苹果在 iOS 11 上引入安全区域概念,建议开发者在安全区域内进行 UI 布局,因此我们可以获取屏幕 keyWindow 的 safeAreaInsets 值来判断设备是否 iPhone X。

    1.5K20

    事件流、事件捕获和事件冒泡的介绍

    事件流、事件捕获和事件冒泡的介绍 最近有用到对应的场景,下班了特地来整理下响应的概念,巩固下知识。 我们在点击页面时,事件发生时会在各元素节点按照一定的顺序进行传播,这种传播过程就称作事件流。...事件流分为三个阶段: 1、事件捕获阶段 事件从window发出,不断向子元素寻找对应的目标节点 2、事件目标阶段 事件找到了对应的目标节点,即此时再往下已经没有对应的节点 3、事件冒泡阶段 事件从节点位置网上回溯到文档的根节点...我们在使用给dom添加事件时一般使用addEventListener方法,该方法传入三个参数 1、对应的事件名称如:click 2、函数:触发对应的交互响应后执行的函数 3、userCapture:指定事件是在捕获还是冒泡阶段执行...事件冒泡 可以看到,都是先触发捕获再触发冒泡事件,先从body(上)到btn(下),再从btn(下)到body(上)。...有个例子就讲的挺有形象,就好比一个塑料扔到水里,先往下沉(捕获阶段),沉到最底部(目标阶段)再慢慢浮起来(冒泡阶段)。

    1.3K00

    如何捕获和处理HTTP GET请求的异常

    本文将介绍如何在不同的编程环境中捕获和处理HTTP GET请求的异常,包括Python、JavaScript、Java、C#等,并提供相应的代码示例。...本文将介绍如何在不同的编程环境中捕获和处理HTTP GET请求的异常,并展示如何在代码中设置代理信息。我们将涵盖Python、JavaScript、Java、C#等语言,并提供相应的代码示例。...如果请求成功,我们打印出成功消息和响应内容。如果请求失败,我们捕获并打印出相应的异常信息。...如果请求成功,我们打印出成功消息和响应内容。如果请求失败,我们捕获并打印出异常信息。 总结 捕获和处理HTTP GET请求的异常是确保网络应用程序健壮性的重要步骤。...本文介绍了如何在不同的编程环境中捕获和处理HTTP GET请求的异常,并展示了如何在代码中设置代理信息。

    18010

    如何在iPhone和iPad上隐藏IP地址,保护个人隐私信息

    苹果在最新的iOS 15系统中增加了许多有效地保护用户隐私的措施,你可以在设置中隐藏IP地址,阻止跟踪器在你浏览进行跟踪,避免隐私泄露问题。...Safari.jpg 以下是在iPhone和iPad的Safari中隐藏IP地址的具体步骤: 1. 进入设置。 2. 向下滚动找到Safari浏览器。 3....向下滚动,在隐私和安全部分下,你就会看到“隐藏IP地址”的选项。 4. 选择“对跟踪器隐藏”开启该功能,网站就无法获取你的IP地址及个人信息了。 隐藏IP地址.png 是不是非常简单?...事实上,除了在Safari中隐藏IP地址,iOS 15还增加了许多新的隐私功能,例如通过应用隐私报告,用户可以查看每个应用在过去7天内使用授予的权限访问其位置、照片、相机、麦克风和联系人的频率;在邮件应用中...如果你对iOS 15中的隐藏IP地址和其他隐私方面的设置有任何疑问,欢迎在下面的评论中告诉我们。

    3.2K00

    bd平台的单细胞转录组一定能捕获到中性粒细胞吗

    中性粒细胞种qc指标都很差 既然这个捕获中性粒细胞是BD单细胞转录组的卖点,那么是不是只要是选择了这个技术就一定能能捕获到中性粒细胞呢?...绝大部分文章都是抓住免疫细胞亚群进行细分,包括淋巴系(T,B,NK细胞)和髓系(单核,树突,巨噬,粒细胞)的两大类作为第二次细分亚群。...但是也有不少文章是抓住stromal 里面的fibo 和endo进行细分,并且编造生物学故事的。...我们前面已经对免疫细胞里面的髓系和B细胞细分亚群进行了简单的介绍: B细胞细分亚群 髓系免疫细胞细分亚群 但是之前的髓系免疫细胞细分的时候其实并没有中性粒细胞亚群,它也一直不在我们分享的单细胞数据处理代码里面...没有展示中性粒细胞亚群 现在的问题来了 是因为bd平台比较容易捕获中性粒细胞呢,还是说取决于科研工作者的实验操作呢?

    47530

    iPhone、Mac上都能跑,刷屏的Llama 2究竟性能如何?

    在 2 万亿的 token 上进行训练,相比于 Llama 1,训练数据多了 40%,精调 Chat 模型是在 100 万人类标记数据上训练的。...在 Meta 发布的论文中,我们还可以看到 Llama 2 的一些性能情况: Llama 2 70B 在 MMLU 和 GSM8K 上得分接近 GPT-3.5,但在编码基准上存在显著差距。...在几乎所有基准上,Llama 2 70B 的结果均与谷歌 PaLM (540B) 持平或表现更好,不过与 GPT-4 和 PaLM-2-L 的性能仍存在较大差距。...它的目标是让你「在任何设备上都能编译运行大语言模型」,包括移动端、消费级电脑端和 Web 浏览器。...当然,借助 MLC-LLM,运行其他版本的 Llama 2 模型更是不在话下:7B 模型在 Apple M2 Max 上的运行速度约为 46 tok/s,在 RTX 4090 上约为 156 tok/s

    47730

    RepeatMasker:查找基因组上的重复序列

    RepeatMasker软件用于查找基因组上的重复序列,默认情况下,会将重复序列原有的碱基用N代替,从而达到标记重复序列的目的。...除此之外,也可以采用将重复序列转换为小写或者直接去除的方式,来标记重复序列。 该软件将输入的DNA序列与Dfam和Repbase数据库中已知的重复序列进行比对,从而识别输入序列中的重复序列。.../configure 需要注意的是,至少需要安装上述四种比对软件中的任意一种。...此外,还需要安装TRF软件,链接如下 http://tandem.bu.edu/trf/trf.html 在安装过程中需要指定比对软件和TRF软件的安装位置。...运行完成后,会生成多个文件,后缀为masked的文件为标记重复序列后的文件,后缀为.out的文件保存了重复序列区间信息。

    2.7K20
    领券