我必须将此 preg_split 代码“翻译”成 Java 等效代码。我已经尝试了一些没有成功的事情。这是我试图翻译的 PHP 代码:
$str="1 [3 4 5] 6 7 [8 9] 4";
$chars = preg_split("^\[(.*?)\]||/ /^", $str, -1, PREG_SPLIT_DELIM_CAPTURE);
foreach ($chars as $key => $value) {
if(ord($value)!=0 && $value!=" "){
$res[]=$value;
}
}
print_r($res);
如您所见,我的 String 输入可以由任何数字字符序列组成,其中一些用 [ ] 括号括起来:
1 [3 4 5] 6 7 [8 9] 4
括号可以在字符串的开头或结尾,对此没有限制。
按照上面的示例,结果将如下所示:
[0] = "1"
[1] => "3 4 5"
[2] => "6"
[3] => "7"
[4] => "8 9"
[5] => "4"
我在尝试翻译正则表达式时发现了一些问题(看起来像“\”因为无效的转义序列而失败)。