Java 从外方括号中提取内容的正则表达式
我有一个以下格式的字符串:Java 从外方括号中提取内容的正则表达式,java,regex,Java,Regex,我有一个以下格式的字符串: TSHIRT[SIZE[S,M,L], COLOR[BLUE,RED,GREEN]] 从外方括号ie中提取T恤属性的正则表达式是什么 SIZE[S,M,L] COLOR[BLUE,RED,GREEN] 也许 SIZE\[([^\]]*)\]|COLOR\[([^\]]*)\] 可能只是返回那些大小和颜色值 测验 如果您希望简化/修改/探索表达式,将在的右上面板中进行解释。如果您愿意,还可以在中查看它与一些示例输入的匹配情况 你可以试试这个正则表达式 (?&l
TSHIRT[SIZE[S,M,L], COLOR[BLUE,RED,GREEN]]
从外方括号ie中提取T恤属性的正则表达式是什么
SIZE[S,M,L]
COLOR[BLUE,RED,GREEN]
也许
SIZE\[([^\]]*)\]|COLOR\[([^\]]*)\]
可能只是返回那些大小和颜色值
测验
如果您希望简化/修改/探索表达式,将在的右上面板中进行解释。如果您愿意,还可以在中查看它与一些示例输入的匹配情况
你可以试试这个正则表达式
(?<=TSHIRT\[)([^\[]+\[[^\]]+\])[,\s]+([^\[]+\[[^\]]+\])(?=\])
(?到目前为止您尝试了什么?请发布您尝试过的模式(\[.*(:\[?[^\[]*?\]),但它没有单独给我分组。我需要大小[S,M,L]和颜色[BLUE,RED,GREEN]分开。怎么办?这不是创建两个分组。我想要大小[S,M,L]和颜色[BLUE,RED,GREEN]分为2组,这样我就可以得到T恤的尺寸和颜色。@YogeshTyagi你看过regex演示吗?它确实创建了两个组,单击匹配信息块和我提供的链接,看到它确实创建了两个组groups@YogeshTyagi它正在工作。非常感谢您的帮助,您真是太好了。:-)不为T恤工作[S,M,L]],它应该返回我1组
Full match: SIZE[S,M,L]
Group 1: S,M,L
Group 2: null
Full match: COLOR[BLUE,RED,GREEN]
Group 1: null
Group 2: BLUE,RED,GREEN
Full match: SIZE[S,M,L,XL,XXL]
Group 1: S,M,L,XL,XXL
Group 2: null
Full match: COLOR[BLUE,RED,GREEN,PINK,ORANGE]
Group 1: null
Group 2: BLUE,RED,GREEN,PINK,ORANGE
(?<=TSHIRT\[)([^\[]+\[[^\]]+\])[,\s]+([^\[]+\[[^\]]+\])(?=\])