我需要帮助写下面的字符串正则表达式。我尝试了很多模式,但都失败了。我有一个像这样的字符串
package1[module11,module12,module13],package2[module21,module22,module23,module24,module25],package3[module31]我想把这根线拆成这样
package1
module11,module12,module13
package2
module21,module22,module23,module24,module25
package3
module31我知道在这里问一个正则表达式很奇怪但是..。
发布于 2012-01-03 22:53:16
您可以使用以下模式进行匹配:
(\w+)\[(\w+(?:,\w+)*)\]示例:http://www.rubular.com/r/rPUEWBoU1d
模式非常简单,真的:
(\w+) -捕获第一个单词(package1)\[(\w+(?:,\w+)*) -至少包含一个单词( formed)\] )的序列(module11),后跟逗号分隔的单词(假设它们很好地捕获
在所有情况下,您都可能希望将\w更改为您的字母表(甚至可能是[^,\[\]] -而不是逗号或括号)。您可能还希望检查整个字符串匹配,因为上面的模式可能会跳过不需要的部分(例如:a[b]$$$$c[d])
https://stackoverflow.com/questions/8714020
复制相似问题