我之前从未使用过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
Run Code Online (Sandbox Code Playgroud)
我想把这个字符串拆分为'.' 但我想保持这个时期.怎么能实现呢?
Bar*_*mar 25
你可以使用lookbehind来做到这一点:
split(/(?<=\.)/, $string)
Run Code Online (Sandbox Code Playgroud)
正则表达式匹配句点后面的空字符串.
如果要同时删除句子之间的空格,可以将其更改为:
split(/(?<=\.)\s*/, $string)
Run Code Online (Sandbox Code Playgroud)
Dan*_*ard 12
如果你不介意在数组中将句点拆分成它们自己的元素,你可以使用括号来告诉split保留它们:
my @array = split(/(\.)/, $string);
Run Code Online (Sandbox Code Playgroud)