Perl如何准确地拆分字符串?

Perl如何准确地拆分字符串?,perl,Perl,引用自perldoc-f split的: 作为一种特殊情况,指定空格(“”)的模式将在 空白,就像无参数拆分一样。因此,split(“”)可以 用于模拟awk的默认行为,而split(//)将 提供尽可能多的初始空字段(空字符串) 前导空格 上面提到的是split如何处理字符串分隔符,但一般情况下,是否总是删除字符串分隔符的空前导字段?否,仅当分隔符是单个空格的字符串时。在任何其他情况下,分隔符被解释为regex模式。未指定模式字符串的拆分行为,而不是'split主要用于regexp…@Nemo

引用自perldoc-f split的

作为一种特殊情况,指定空格(“”)的模式将在 空白,就像无参数拆分一样。因此,split(“”)可以 用于模拟awk的默认行为,而split(//)将 提供尽可能多的初始空字段(空字符串) 前导空格


上面提到的是split如何处理
字符串
分隔符,但一般情况下,是否总是删除字符串分隔符的空前导字段?

否,仅当分隔符是单个空格的字符串时。在任何其他情况下,分隔符被解释为regex模式。

未指定模式字符串的
拆分
行为,而不是
'
split
主要用于regexp…@Nemo:指定:
模式“/pattern/”可以替换为表达式,以指定运行时变化的模式。
,字符串是表达式的一种形式。您也可以通过
/\s+/
在空白处进行拆分,而不需要
'
的特殊行为。这会将多个空格字符组合到一个字段分隔符中,因此如果分隔符不是单个空格,则无法进行
拆分
以删除空的前导字段?不过,在进行拆分之前,您可以自己用正则表达式修剪字符串,或者丢弃数组的前导未定义结果。@Justin Hawkins,而且会有一个最像这样的空字符串<代码>移位(@results),如果@results&$results[0]等式为“”