Regex用于在2个特定组合后进行拆分
本文关键字:拆分 组合 用于 2个 Regex | 更新日期: 2023-09-27 18:00:54
我必须拆分一个数字字符串,它可以是这样的:-35,4-5,-2-4,4-6。基本上,我需要总是用第一个数字字符后的"-"分隔。
您可以使用以下表达式:(?<='d)-
(此处为示例(
String numbers = "-3-5, 4-5, -2--4, 4--6";
for(String number : numbers.split("(?<=''d)-"))
System.out.println(number);
产生
-3
5, 4
5, -2
-4, 4
-6
我想你可能需要除以,
才能得到单个数字。
可能是这样的吗?
#!/usr/bin/env perl
use strict;
use warnings;
use Data::Dumper;
my $string = '-3-5, 4-5, -2--4, 4--6';
my %extract = ( $string =~ m/([-'d]+)-([-'d]+)/g );
print Dumper '%extract;
提供:
$VAR1 = {
'4-' => '6',
'-2-' => '4',
'-3' => '5',
'4' => '5'
};
(?<='d)-(?=-|'d)
你可以通过这个分开。请参阅演示。
https://regex101.com/r/cK4iV0/14