Java正则表达式性能指标?

Java正则表达式性能指标?,java,regex,Java,Regex,给定以下代码,如何获取正则表达式的度量?Matcher和Pattern是否提供了对匹配/查找性能的可见性,或者我是否需要手动计算 大概是这样的: String text = "...some really big string of containing a pattern to match..."; Pattern PATTERN = Pattern.compile("<the pattern to match>", Pattern.

给定以下代码,如何获取正则表达式的度量?Matcher和Pattern是否提供了对匹配/查找性能的可见性,或者我是否需要手动计算

大概是这样的:

String text = "...some really big string of containing a pattern to match...";
        Pattern PATTERN = Pattern.compile("<the pattern to match>",
                Pattern.DOTALL);
        Matcher m = PATTERN.matcher(text);
        if (m.find()) {
          // ????? How long did find() take to match the pattern ?????
        }
String text=“…包含要匹配的模式的一些非常大的字符串…”;
Pattern=Pattern.compile(“”,
模式(DOTALL);
Matcher m=模式匹配器(文本);
if(m.find()){
//???find()需要多长时间来匹配模式?????
}

回答您的问题,如果没有访问性能指标的方法,那么就没有可见性。Java没有任何为某种目的隐藏特殊方法的概念,这些方法可以通过某种特殊的技巧秘密地访问


如果需要性能指标,只需使用
System.currentTimeMillis()
(或者如果需要更高的分辨率,
System.nanoTime()
)并注意开始和结束方法之间的时间差。

您如何测量任何其他方法的时间?设置时间值=立即,然后找到该值与执行该方法的时间+立即之间的差值。你会怎么做?