regex - 如何在perl的if语句中捕获由逻辑AND分隔的多个正则表达式组?
问题描述
这是代码 -
my $s_ver = 'port=":443"; d=3600; v="10,20"';
my $b_ver = 'FB10';
if ($s_ver =~ /(v="[0-9]+(,[0-9]+)*")/ && $b_ver =~ /FB(\d\d)/){
{
print("$1 and $2\n");
}
电流输出 -
10 and
预期产出 -
v="10,20" and 10
如何做到这一点?谢谢。
解决方案
if (
( my ($s_cap) = $s_ver =~ /(v="[0-9]+(?:,[0-9]+)*")/ ) &&
( my ($b_cap) = $b_ver =~ /FB(\d\d)/ )
) {
print("$s_cap and $b_cap\n");
}
推荐阅读
- r - ggplot w/x轴月-年(无天)和“过滤器”开始日期
- yii2 - 通过ajax的表单未提交
- laravel - How to get the project which belongs specific user
- flutter - 在内置打印机的设备中单击按钮时是否有任何选项可以打印收据
- nosql - Oracle NoSQL 数据库中是否提供 SQL IN 运算符?
- reactjs - Django jwt 令牌错误。“给定的令牌对任何令牌类型均无效,token_not_valid”
- pandas - 对于同一行,逐行计算基于另一列的列中字符串出现的次数?
- c# - 在 Xna/MonoGame 中将纹理编辑为 2D 数组
- c++ - 失去唤醒:如果生产者先获取互斥锁怎么办?
- mysql - MySQL:正确舍入百分比