我不是常客,但我手头有任务,我认为表达方式可能很方便。我想检查像'stringList [0]','stringList [2]'这样的字符串是否符合模式,也就是说我试图弄清楚字符串是否是集合元素的文本表示。这种模式会是什么样的?我将使用java作为主要工具。非常感谢你。
答案 0 :(得分:2)
"stringList\\[(\\d+)\\]"
将匹配“stringList [a number]”
"([a-zA-Z]+)\\[(\\d+)\\]"
将匹配任何大写/小写字符序列,后跟“[数字]” 合法的java类/字段名称可能包含数字(不是第一个字符)和下划线(也许还有更多我想不到的东西?),所以你需要一些更复杂的第一个块,但你可以probbaly谷歌用于合法java类/字段名称的“完整”表达式
答案 1 :(得分:2)
要匹配'stringList [0]',您可以使用
"stringList\\[\\d+\\]"
匹配stringList,后跟[和至少一个数字后跟]
编辑:
匹配澄清的内容
"[\\p{L}_$][\\p{L}\\p{N}_$]*\\[\\d+\\]"
我认为匹配任何有效的标识符。从任何字母,_或$开始,然后是一个或多个字母,数字,_或$后跟[,然后是1位或更多位数,然后是另一位数字。