gpt4 book ai didi

java - 如何调试返回带有值但没有内容的字符串的 Java 字符串拆分?

转载 作者:行者123 更新时间:2023-12-02 07:59:09 24 4
gpt4 key购买 nike

我尝试使用 regEx 来分割一个字符串,这给了我一个包含 2 个项目的数组。我只对第一个元素真正感兴趣,但是调试器报告它没有任何内容(屏幕截图中的黄色圆圈),但具有我在正则表达式中匹配的项目的“值”。 (屏幕截图中以蓝色突出显示)

enter image description here

如何以编程方式获取该值?

这是我正在使用的代码:

//Handle Related description by stripping off data relating to it
String[] descriptionShortened=jsonObject.getString("description").split("^.*[^Related]");
String descriptionintro=descriptionShortened[0].toString();


descriptionList.add(descriptionintro);

最佳答案

[^Related] 匹配字符类,该字符类匹配除字母 R、e、l、a、t、e、d 之外的所有内容。您的正则表达式将匹配任何内容,这就是数组的第一个元素为空的原因。如果您想要一个包含字符串“Related”之前的所有内容的字符串,只需调用

descriptionShortened = jsonObject.getString("description").split("Related");

字符串“Related”之前的所有内容都将位于返回数组的第一个元素中。例如,如果 jsonObject.getString("description") 返回 "abcdRelatedefgh",则上面的代码将返回一个数组 { "abcd", "efgh"} .

关于你的第一个问题和屏幕截图,该字符串确实是空的。该值是一个指针,但它指向空白空间。每个字符串都有一个值字段,但这并不意味着它不为空。

关于java - 如何调试返回带有值但没有内容的字符串的 Java 字符串拆分?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9152441/

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