gpt4 book ai didi

java - 如何正确转义该字符串?

转载 作者:行者123 更新时间:2023-12-01 19:21:01 25 4
gpt4 key购买 nike

我想应用一个复杂的正则表达式。这是我的模式:

/(?:^|\s|[\.(\+\-\,])(?:\$?)\$((?:[0-9]+(?=[a-z])|(?![0-9\.\:\_\-]))(?:[a-z0-9]|[\_\.\-\:](?![\.\_\.\-\:]))*[a-z0-9]+)/i

如何将其声明为字符串并确保所有内容都被转义?

最佳答案

在我看来,该正则表达式中好像有很多不必要的东西

  1. 类似 (?:\$?) 的内容与 \$?
  2. 无需“保护”方括号组中的“.”、“_”、“,”或“+”字符

所以你真正可以拥有的是:

/(?:^|\s|[.(+\-,])\$?\$((?:[0-9]+(?=[a-z])|(?![0-9.:_\-]))(?:[a-z0-9]|[_.\-:](?![._\-:]))*[a-z0-9]+)/i

至于将其放入字符串中,您真正需要担心的是反斜杠。这些需要加倍(“\”)。外部的“/”字符将被删除,尾随的“i”修饰符将被传递到 Pattern.compile() 方法中。

关于java - 如何正确转义该字符串?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4248593/

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