我有一些字符串需要通过RegEx进行匹配。我们有一个Java应用程序,它从配置文件中读取正则表达式,并采用两组字符串,其中的数字在相同的配置中指定。RegEx匹配模式并排除部分字符串
E.g.
CustomAction.523274ca945f.dialogLabel=Executing Custom Code...
将
(?m)^(?!#)\s*(\S*)\s*=\s*(\S*.*)
我需要的是选择第一组“CustomAction.523274ca945f.dialogLabel
”,并排除随机字符串在中间,所以我最终的东西,如“CustomAction.dialogLabel
”或“匹配CustomAction..dialogLabel
“以及任何其他组合,但随机字符串。
我没有我正在使用的java应用程序的源代码。这是一个应用程序的,我可以创造中,我指定一种模式和两组配置文件和应用程序挑选他们
pattern: (?m)^(?!#)\\s*([^.=\\s]*)\\.(?:[^.=\\s]*\\.)?([^.=\\s]*)\\s*=\\s*(.*?)\\s*$ key_group: 1 value_group: 2
我只能指定每个键一组,每一个值。根据这种模式,app选择key_group作为key和value_group作为它的值。
我不想垃圾在中间,因为它是随机的,每次都会改变密钥。
嗨,我需要的结果是第一和第三组连接不在不同的组。在我有的应用程序中,我只能指定两个组,一个用于Key,另一个用于值。 – rojanu 2010-06-18 14:20:00
然后我会改变我的答案为“不可能”(见编辑) – 2010-06-21 12:01:54