拆分字符串并在数组中获取分隔符



我想像这样拆分一个字符串:

"Street:§§§§__inboundRow['Adress']['Street']__§§§§ und Postal: §§§§__inboundRow['Adress']['Postal']__§§§§ super"

我在Groovy中的代码:

def parts = ret.split(/§§§§__inboundRow.+?__§§§§/)

所以我得到的数组是

["Street:", " und Postal: ", " super"]

但我想要的是:

["Street:", "§§§§__inboundRow['Adress']['Street']__§§§§", " und Postal: ", "§§§§__inboundRow['Adress']['Postal']__§§§§", " super"]

我如何实现这一点?

尝试在积极的展望下进行拆分。 由于您希望保留用于拆分的分隔符,因此环顾四周可能是此处的方法。

var str = "String1:§§§§__inboundRow[Test]__§§§§andString2:§§§§__inboundRow[Test1]__§§§§";
console.log(str.split(/(?=§§§§__inboundRow[Testd*]__§§§§|and)/));

我不知道你使用的确切语言是什么,但这应该适用于任何你可能使用正则表达式拆分的地方,并展望(JavaScript当然支持它(。 用于拆分的模式是:

(?=§§§§__inboundRow[Testd*]__§§§§|and)

这说当我们可以断言以下内容是文本§§§§__inboundRow[Testd*]__§§§§and时要拆分。

最新更新