- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我正在尝试根据空白(空格、返回键、制表符)解析字符串(有些可能很长、段落)。当前使用String.split("\\s++")
。在我们更新的上一个项目中,我们只是使用了StringTokenizer
。使用 String.split("\\s++")
在我们所有的测试和所有 Beta 测试人员中都表现得很好。
当我们将其发布给扩展的用户时,它会运行一段时间,直到耗尽所有服务器资源。根据我的研究,这似乎是灾难性的回溯。我们收到如下错误:
....was in progress with java.base@11.0.5/java.util.regex.Pattern$GroupHead.match(Pattern.java:4804)
java.base@11.0.5/java.util.regex.Pattern$Start.match(Pattern.java:3619)
java.base@11.0.5/java.util.regex.Matcher.search(Matcher.java:1729)
java.base@11.0.5/java.util.regex.Matcher.find(Matcher.java:746)
java.base@11.0.5/java.util.regex.Pattern.split(Pattern.java:1264)
java.base@11.0.5/java.lang.String.split(String.java:2317)
用户可以输入一些疯狂的文本。解析 10 个字符到 1000 个字符长的字符串的最佳选项是什么?我在砖墙上。过去 4 天一直在尝试不同的模式(正则表达式不是我最擅长的领域),但没有取得长期成功。
最佳答案
如果您不信任正则表达式,简单的解决方案是使用非基于正则表达式的解决方案,例如 ApacheCommons StringUtils#split。或者,您自己编写一个也很容易。
请记住,使用 StringTokenizer 与 split 函数之间的区别是标记生成器是惰性的。如果您只检索分割结果的子集,则分割可能会消耗更多内存。不过,我只希望这是大字符串的问题。
关于Java String.split() 失控,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59415645/
我正在尝试根据空白(空格、返回键、制表符)解析字符串(有些可能很长、段落)。当前使用String.split("\\s++")。在我们更新的上一个项目中,我们只是使用了StringTokenizer。
我在过去可以工作的 Oracle 10 SQL 中有一个分层查询。但是,我删除了它所基于的物化 View ,现在我无法让它正确显示,甚至完全离开了那个 View 。 原始查询如下所示: select
下面的代码有效。该代码调用 API 来获取历史交易(每次拉取 100 笔交易)。因为存在限制 - 允许调用 API 的次数和频率 - 结构类似于递归。 流程如下: 获取当前的 MAX tradeId
.inDB { background-color: #53354A; color: #53354A; padding: 2% 3%; height: 100px; width: 1
echo ''.$result['title'].' '.$result['description'].''; 为什么 .post
我正在使用 Gzip 压缩和 Zlib 压缩来加速我的网站 我使用了下面的代码 ob_start("ob_gzhandler");在包含在所有页面上的公共(public)文件中, lib.output
我是一名优秀的程序员,十分优秀!