首页 > 解决方案 > Perl 从字符串中删除一个字符,除非它是重复的

问题描述

除非重复一次,否则从字符串中删除特定字符的最干净/最简单的方法是什么。

例如给定以下字符串:

'it''s 'simple'

我预计:

it's simple

对于我的用法,连续不得超过两个 ' 字符。

标签: perlsubstitution

解决方案


使用否定的前瞻断言。

#!/use/bin/perl

use strict;
use warnings;
use feature 'say';

$_ = "'it''s simple'";

say;

s/'(?!')//g;

say;

'(?!')意思是“一个没有紧跟另一个单引号的单引号”。

输出:

'it''s simple'
it's simple

推荐阅读