[英]How to check for nested square brackets?
我有下面的輸入字符串:
[text1][text2][text3]...[textN]
我想使用正則表達式應用以下驗證規則:
]
和[
不能包含在其他[]
。
例如,下一個輸入字符串不正確:
[test1][test2[][test3]
[test1][test2]][test3]
[test1][test2[lol][test3]
[test1][test2]lol][test3]
我需要驗證輸入字符串,因為我打算將其分成[]
組(再次使用正則表達式)。
如果您真的想要一個正則表達式,這里是一個快速的例子:
^(\\[[^\\[\\]]+\\])*$
適用於您的示例
這里的原理是每個括號對(\\[.*\\])*
包含不包含括號[^\\[\\]]+
任何文本
萬一您需要能夠使[test1][test2][][test3]
工作,請用*
更改+
以允許空字符串匹配
這應該可以解決問題:
^(\[\w*\])*$
它的意思是
[
\\w
匹配[A-Za-z0-9_]
) ]
*
多次
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.