kul*_*lan 4 regex perl grouping
我有一个以下格式的字符串:_num1_num2.我需要为某些变量赋值num1和num2赋值.我的正则表达式是(\d+),它在Rubular.com上显示了正确的匹配组,但我不知道如何将这些匹配组分配给某些变量.有谁能够帮我?谢谢你.
那应该是(假设你的字符串存储在' $string'):
my ($var1, $var2) = $string =~ /_(\d+)_(\d+)/s;
Run Code Online (Sandbox Code Playgroud)
我的想法是获取数字直到你得到一个非数字字符:这里' _'.
然后将每个捕获组分配给它们各自的变量.
\d如果应用于Unicode字符串,则确实可以匹配10个以上的不同字符.
所以你可以改用:
my ($var1, $var2) = $string =~ /_([0-9]+)_([0-9]+)/s;
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
5186 次 |
| 最近记录: |