我需要正则表达式找到孩子和父母。例如:
- > 2014-05-21 22:05:23.092 INFO [Core] org.jboss.modules.ModuleClassLoader@692578be parent:sun.misc.Launcher$AppClassLoader@62c8aeb3,sun.misc.Launcher $ ExtClassLoader @ 65459c6f
孩子为org.jboss.modules.ModuleClassLoader@692578be
,其父级为sun.misc.Launcher$AppClassLoader@62c8aeb3
。 <{1}}之后的后一个字符串将被忽略。
- &gt; 2014-05-21 22:04:34.118 INFO [Core] sun.misc.Launcher$AppClassLoader@62c8aeb3 parent: sun.misc.Launcher$ExtClassLoader@65459c6f
在上面,孩子是,
,父母是sun.misc.Launcher$AppClassLoader@62c8aeb3
我有这个正则表达式sun.misc.Launcher$ExtClassLoader@65459c6f
。它适用于第二个例子。但是对于第一个输出parent为:
sun.misc.Launcher$AppClassLoader@62c8aeb3, sun.misc.Launcher$ExtClassLoader@65459c6f
但它应该:.* (.*) parents?: (.*),?.*
答案 0 :(得分:4)
答案 1 :(得分:2)
默认情况下,正则表达式是贪婪的,你应该告诉它排除,
:
.* (.*) parents?: ([^,]*),?.*