我正在尝试将字符串拆分为“。” 除非字符串的一部分在 [ ] 中,否则我只想返回括号内的内容。
我有以下代码行:
"blah.blah[http://blah.blah.com/blah/blah#]".split(("(\\.|\\[(?=.*\\]))")
这将返回:
[ "blah", "blah", "http:blah", "blah", "com/blah/blah#]" ]
如果相反,我尝试:
"blah.blah[http://blah.blah.com/blah/blah#]".split(("(\\.|\\[(?:.*\\]))")
我得到:
["blah", "blah"]
我不确定我需要如何定义我的非捕获组,以便它会在第一个 [ 但在直到并包括 ] 之后不捕获任何内容
只是为了澄清我期待回来的数组是
["blah", "blah", "http://blah.blah.com/blah/blah#"]