我以前从未使用过Perl,并且有一个基本问题。
my $string1 = "Hi. My name is Vlad. It is snowy outside.";
my @array = split('.' $string1); ##essentially I want this, but I want the period to be kept
我想在“。”处分割此字符串。但我想保留期间。如何做到这一点?
最佳答案
您可以使用lookbehind执行此操作:
split(/(?<=\.)/, $string)
正则表达式与句点后面的空字符串匹配。
如果要同时删除句子之间的空格,可以将其更改为:
split(/(?<=\.)\s*/, $string)
正向和反向向后解释here
关于perl - split()但保留定界符,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/14907772/