gpt4 book ai didi

java - 定义字符串时在java中无效的转义序列(有效的是\b\t\n\f\r\"\'\\)

转载 作者:行者123 更新时间:2023-11-29 07:43:06 25 4
gpt4 key购买 nike

我尝试在字符串中定义 \b\t\n\f\r\"\'\\ 但得到无效的转义序列(有效的是\b\t\n\f\r\"\'\\)

我正在从网络上获取加密数据,就像这样。

String testString="4sXuWJ4juj\/RS46l7xFLK|awhVBqNga\/BbyNt7t3Q\/DJ7OhHNix8G2PDyAFSGw+1E=";

这里我想根据| 拆分字符串。所以我想尝试放入字符串。知道如何根据 | 拆分吗?在 Java 中。

任何想法,如果我从 web.using 某些 spitting 参数获取这种类型的字符串数据 testString,如何可能拆分。像 |、\和其他。

最佳答案

当您在 Java 中将正则表达式定义为字符串文字时,将进行两种不同的转义:

  • 首先,Java 编译器解释字符串中的转义序列。它支持字符串文字中的八个转义序列
  • 其次,Regex 引擎在编译器解释 Java 转义序列后解释字符串。 Regex 支持自己的转义序列,让您转义它的元字符。特别是,它支持 \|

但是,为了让 Regex 引擎“看到”\|,您需要为 Java 编译器转义斜杠,即编写 \\|

为了避免在这种情况下出现混淆,我更喜欢从元字符创建一个字符类,例如[|][*][+] 等。通过这种方式,您不必对许多常见的元字符进行双重转义。当然,这个技巧并不通用——例如,它不适用于]

关于java - 定义字符串时在java中无效的转义序列(有效的是\b\t\n\f\r\"\'\\),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28234289/

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