regex - 正则表达式从字符串中提取一些特定的数字,尝试了几种方法
问题描述
我需要从变量中的字符串中提取一个特定的数字;例如,$ex
有类似的 URL "https://www.google.com&r=12345&s=1&t=2"
,我只需要提取12345
。我尝试了这三个正则表达式,但它不起作用。
这一回
=12345=1=2
。$example = $1 if( $ex=~ s/[^=\d]//g);
这个返回null。
$example = $1 if($ex=~ m/r\=([\d+])\&/i);
这个返回null。
$example = $1 if($ex=~ m/r\^=([\d+])\&/i)
解决方案
use URI qw( );
use URI::QueryParam qw( );
$url = URI->new($url);
my $example = $url->query_param('r'); # Get first `r` arguments.
my @example = $url->query_param('r'); # Get all `r` arguments.
推荐阅读
- python - Matplotlib 相当于 pygame 翻转
- react-native - react-navigation 更新到 v2 后,标题为空
- tomcat - 在 tomcat 上配置 ssl/tls
- python - 如何通过 Keras 网络传递多维数据?
- python - Django - 根据用户组过滤下拉选项
- c++ - 为什么不能在同一行定义两个同类型的类的成员指针
- javascript - 丢弃功能不起作用
- sql - 如何在 SQL 中将查询组拆分为频率/出现次数
- python - Django2 - 自动为注册用户分配一定数量的加密货币
- excel - Excel 使用单元格引用作为具有多个条件的逻辑运算符并查找值