我有一个大字符串,其中包含两个常量标记字符串之间的多行子序列,我可以用正则表达式识别.
为了简化我叫他们abcdef
和fedcba
这里:
abcdef Sed lobortis nisl sed malesuada bibendum. fedcba ... abcdef Fusce odio turpis, accumsan non posuere placerat. 1 2 3 fedcba abcdef Aliquam erat volutpat. Proin ultrices fedcba
如何从大字符串中获取包括标记在内的所有事件?
就像是
Pattern r = Pattern.compile("abcdef[\\s\\S]*?fedcba"); Matcher m = r.matcher(sInput); if (m.find( )) { System.out.println("Found value: " + m.group() ); }
sInput
你的字符串在哪里搜索.
[\s\S]*?
将匹配任何数字的任何字符,直至以下fedcba
.感谢?
它是一个非贪婪的匹配,这意味着它不会持续到最后fedcba
(如果它是贪婪的话),从而给你单独的字符串.