Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/regex/20.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Regex Perl:用除空格以外的所有字符分割字符串_Regex_Perl_Split_Whitespace_Inverse - Fatal编程技术网

Regex Perl:用除空格以外的所有字符分割字符串

Regex Perl:用除空格以外的所有字符分割字符串,regex,perl,split,whitespace,inverse,Regex,Perl,Split,Whitespace,Inverse,我想用除空格以外的所有字符分割字符串 示例: 假设我有一个字符串: "The quick brown fox jumps over the lazy dog" 我想拆分它并获得以下空间字符串列表: [" ", " ", " ", " ", " ", " ", " ", " "] 你能告诉我怎么做吗 谢谢 您可以使用\S按此处分割,这意味着匹配任何非空白字符 my @list = split /\S+/, $string; 或者更好的是,只需匹配您的空格,

我想用除空格以外的所有字符分割字符串

示例:

假设我有一个字符串:

"The    quick  brown fox    jumps over   the lazy dog"
我想拆分它并获得以下空间字符串列表:

["    ", "  ", " ", "    ", " ", "   ", " ", " "]
你能告诉我怎么做吗


谢谢

您可以使用
\S
按此处分割,这意味着匹配任何非空白字符

my @list = split /\S+/, $string;
或者更好的是,只需匹配您的空格,而不必拆分

my @list = $string =~ /\s+/g;

您可以使用
\S
按此处分割,这意味着匹配任何非空白字符

my @list = split /\S+/, $string;
或者更好的是,只需匹配您的空格,而不必拆分

my @list = $string =~ /\s+/g;

您可以使用
\S
按此处分割,这意味着匹配任何非空白字符

my @list = split /\S+/, $string;
或者更好的是,只需匹配您的空格,而不必拆分

my @list = $string =~ /\s+/g;

您可以使用
\S
按此处分割,这意味着匹配任何非空白字符

my @list = split /\S+/, $string;
或者更好的是,只需匹配您的空格,而不必拆分

my @list = $string =~ /\s+/g;

\S
在任何非空格上拆分。 但是,如果要包含制表符和换行符,则应使用
(单字符空格)。很可能您需要的是所提供的
\S

my $string = q{The    quick  brown fox    jumps over   the lazy dog};
my @values = split /[^ ]+/, $string;

\S
在任何非空格上拆分。 但是,如果要包含制表符和换行符,则应使用
(单字符空格)。很可能您需要的是所提供的
\S

my $string = q{The    quick  brown fox    jumps over   the lazy dog};
my @values = split /[^ ]+/, $string;

\S
在任何非空格上拆分。 但是,如果要包含制表符和换行符,则应使用
(单字符空格)。很可能您需要的是所提供的
\S

my $string = q{The    quick  brown fox    jumps over   the lazy dog};
my @values = split /[^ ]+/, $string;

\S
在任何非空格上拆分。 但是,如果要包含制表符和换行符,则应使用
(单字符空格)。很可能您需要的是所提供的
\S

my $string = q{The    quick  brown fox    jumps over   the lazy dog};
my @values = split /[^ ]+/, $string;

为什么不直接查找空格而不是按非空格字符分割?

pattern=
(\s+)

为什么不直接查找空格而不是按非空格字符分割?

pattern=
(\s+)

为什么不直接查找空格而不是按非空格字符分割?

pattern=
(\s+)

为什么不直接查找空格而不是按非空格字符分割?

pattern=
(\s+

它返回空列表它不应该,但我确实忘记了重复
+
运算符它不应该返回空列表,但我确实忘记了重复
+
运算符它不应该返回空列表,但我确实忘记了重复
+
运算符它不应该返回空列表,但是我确实忘记了重复
+
运算符这看起来是最好的答案,特别是因为他在第二个选项上击败了我,这可能是最好的。这看起来是最好的答案,特别是因为他在第二个选项上击败了我,这可能是最好的。这看起来是最好的答案,特别是因为他在第二个选项上击败了我,这可能是最好的。这看起来是最好的答案,特别是因为他在第二个选项上击败了我,这可能是最好的。