gpt4 book ai didi

regex - 如何在字母字符和数字字符之间插入空格?

转载 作者:行者123 更新时间:2023-12-04 06:39:30 25 4
gpt4 key购买 nike

这是我原来问题的延续:
Perl- How do I insert a space before each capital letter except for the first occurrence or existing?

我能够实现在字符串中只有字母的大写字母之间插入空格的理想结果:

my $camel ="SomeCamel IsEnteringText";
$camel =~ s/(?<=[a-z])(?=[A-Z])/ /g;
$camel =~ s/([^[:space:]]+)/\u$1/g;

打印:

Some Camel Is Entering Text



但是,当数字出现时,我遇到了问题:
my $camel ="Some 440Camel220 IsEntering100Text Nogo";
$camel =~ s/(?<=[a-z])(?=[A-Z])/ /g;
$camel =~ s/([^[:space:]]+)/\u$1/g;

打印:

Some 440Camel220 Is Entering100Text Nogo



期望:

Some 440 Camel 220 Is Entering 100 Text Nogo



那么,我现在如何在字母和数字之间插入一个空格?

最佳答案

将第一个替换更改为:

$camel =~ s/(?<=[a-z])(?=[A-Z0-9])|(?<=[0-9])(?=[A-Z])/ /g;

另见 perldoc perlre .

关于regex - 如何在字母字符和数字字符之间插入空格?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4439902/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com