簡體   English   中英

沒有堆棧溢出的Java正則表達式解析器

[英]Java regex parser without stack overflow

處理與正則表達式java.util.regex導致堆棧溢出的大型字符串和正則表達式復雜(尤其是具有|它)。

有沒有辦法在Java中更具防御性地處理正則表達式,比如

  • 具有正則表達式的非遞歸模式
  • 為這些正則表達式拋出一個可捕獲的異常(而不是java.lang.Stackoverflow錯誤),

或任何其他機制不會殺死我的程序或使其處於不可恢復的狀態?

StackOverflowError可以像任何異常一樣被捕獲和處理。 錯誤表示您通常不應該捕獲的嚴重問題,但在這種情況下,您知道它是什么,您需要處理它。 抓住它並處理情況(或重新拋出自定義異常)。

您可能還需要考慮使用-Xss命令行標志來增加堆棧大小。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM