我试图编写一个正则表达式来查找以下模式的字符串:
1. 以左括号 { 开头,后跟双引号 " 2. 然后允许包含一个或多个字母数字字符 a-zA-Z0-9 3. 然后是另一个双引号 ",紧接着是冒号 : 和一个左大括号 [ 4. 然后允许任何零个或多个字母数字字符 a-zA-Z0-9
因此,一些符合正则表达式的字符串如下:
到目前为止,我能想到的最好的方案是:
但我知道我完全偏离了方向。有没有正则表达式专家能帮我理清思路?提前感谢!
1. 以左括号 { 开头,后跟双引号 " 2. 然后允许包含一个或多个字母数字字符 a-zA-Z0-9 3. 然后是另一个双引号 ",紧接着是冒号 : 和一个左大括号 [ 4. 然后允许任何零个或多个字母数字字符 a-zA-Z0-9
因此,一些符合正则表达式的字符串如下:
{"hello":[blah
{"hello":[
{"1":[
以下是一些不匹配的字符串:
{hello:[blah
hello":[
{"2:[
到目前为止,我能想到的最好的方案是:
String regex = "{\"[a-zA-Z0-9]+\":\[[a-zA-Z0-9]*";
if(myString.matches(regex))
// do something
但我知道我完全偏离了方向。有没有正则表达式专家能帮我理清思路?提前感谢!
Java
的细节。 - atomman