gpt4 book ai didi

java性能问题-正则表达式VS内部String方法

转载 作者:行者123 更新时间:2023-12-02 00:04:07 25 4
gpt4 key购买 nike

我遇到以下问题:我的应用程序中的某处有一些字符串需要检查 - 检查该字符串是否包含与 " " 不同的字符(空白),/n/r例如:

  • " g" - 包含
  • " /n " - 不包含
  • " " - 不包含

我想在 reg 表达式中执行此操作,但我不想使用常见模式 .*[a-zA-Z0-9]+.* .相反,我想要类似 .*[!" ""/n"/r"] 的东西。 (不同于 " " "/r""n" 的每个字符)。

我的问题是

  1. 我不知道这个模式是否有效(上面的模式不起作用)
  2. 我不确定这是否会比使用更快 常规字符串方法。

最佳答案

首先,你的意思是\n\r ,在 Java 中,这意味着使用 \\n 转义反斜杠。和\\r .

其次,如果您只是想捕获任何非空白字符,只需使用模式 \\S*[^\\s]\S是非空白,或者 \s是空格且 [^<charset>]意思是“匹配除其中之一之外的任何内容。”

第三,如果这是重复检查,请确保仅编译正则表达式一次,然后多次使用它。

第四,遵循通常的分析策略。首先,这是您应用程序中的关键 strip 吗?如果是这样,那么就对自己进行基准测试。

关于java性能问题-正则表达式VS内部String方法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14221257/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com