gpt4 book ai didi

regex - 除非在单引号引起来的字符串内,否则如何按空格分割字符串?

转载 作者:行者123 更新时间:2023-12-04 16:26:33 24 4
gpt4 key购买 nike

我正在寻找一种拆分包含以下格式文本的字符串的解决方案:

"abcd efgh 'ijklm no pqrs' tuv"

这将产生以下结果:
['abcd', 'efgh', 'ijklm no pqrs', 'tuv']

换句话说,除非在单个带引号的字符串内,否则它将按空格分隔。我认为可以通过使用“环顾四周”运算符(尤其是平衡运算符)的.NET正则表达式来完成。我不太确定Perl。

最佳答案

使用Text::ParseWords:

#!/usr/bin/perl

use strict; use warnings;
use Text::ParseWords;

my @words = parse_line('\s+', 0, "abcd efgh 'ijklm no pqrs' tuv");

use Data::Dumper;
print Dumper \@words;

输出:

C:\Temp> ff
$ VAR1 = [
'A B C D',
'efgh',
'ijklm no pqrs',
'tuv'
];

您可以查看 Text::ParseWords::parse_line的源代码以查看所使用的模式。

关于regex - 除非在单引号引起来的字符串内,否则如何按空格分割字符串?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2459729/

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