我正在尝试将字符串的字符拆分为字符串数组。我找到了解决方案here https://stackoverflow.com/questions/5235401/split-string-into-array-of-character-strings.
解决方案很完美,但我不明白如何.split("(?!^)")
工作了。我熟悉以下基础知识split()
方法。有人可以提供解释吗?
(?!^)
is a 正则表达式 http://docs.oracle.com/javase/tutorial/essential/regex/由一个负前瞻 http://www.regular-expressions.info/lookaround.html. ^
is an anchor http://www.regular-expressions.info/anchors.html用于表示字符串的开始。(?!^)
匹配所有后面不带 0 长度的字符串^
,字符串的开头。换句话说,它匹配所有0长度的字符串except位于字符串的开头。
例如,在字符串中abc
,将有 3 场比赛:一场介于a
and b
, 之间的一个b
and c
,以及之后的一个c
。对这些匹配项进行拆分会生成所需的数组(请注意,1 参数版本split()
丢弃任何尾随的空字符串,这就是结果数组中不包含任何字符串的原因)。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)