我正在使用Perl RegExp,它试图删除两个双精度字符和双精度数字。 但是,我只想删除双精度字符并在同一字符串中保留双精度数字。
尽管有几个示例显示删除双精度字符,但没有示例显示删除双精度字符并在字符串中保留双精度数字。
我的代码:
#! /usr/bin/perl
use v5.10.0;
use warnings;
my $double = "AAPPLES112233";
$double =~ s/(.)\1/$1/gi;
say $double;
我的代码输出APLES123。但是,目标是输出APLES112233,消除双精度字符,同时将双精度数字保留在同一字符串中。
答案 0 :(得分:1)
与其使用.
(它几乎匹配任何字符(包括字母和数字),而不是使用[a-z]
,它仅匹配字母字符)来
$double =~ s/([a-z])\1/$1/gi;