大家好!我需要将字符串“4{b3{a}}”转换为“baaabaaabaaabaaa”。使用正则表达式时如何从第一行提取数字?我的正则表达式:NSRegularExpression(模式:“[\^{az}\{1-9}$?]*”,选项:.caseInsensitive)
大家好!我需要将字符串“4{b3{a}}”转换为“baaabaaabaaabaaa”。使用正则表达式时如何从第一行提取数字?我的正则表达式:NSRegularExpression(模式:“[\^{az}\{1-9}$?]*”,选项:.caseInsensitive)
下面是一个解决这个问题的例子,我以ipatev_nn提出的正则表达式为基础,给它加上了分组的括号,虽然这个正则表达式只适用于form的字符串,
4{b3{a}}
不适合嵌套较多的字符串组(例如),您可以在此处4{b3{a6{c}}}
通过解析检查正则表达式结果,我们得到这样一个数组,其中偶数位置被要重复的子串占据,奇数位置是重复的次数
我们基于数组生成一个字符串,从内部组开始(从数组末尾开始),也从末尾逐渐形成字符串,每次在开头插入新数据
完整示例