当前位置: 首页 > 知识库问答 >
问题:

需要带分隔符的检查字符串

丁高峯
2023-03-14

我想拆分从蓝牙获得的字符串。我正在使用

StringTokenizer  splitStr = new StringTokenizer(readMessage, "\\|");
String numberSpeed = splitStr.nextToken();  //splitStr[0].replaceAll("\\D+","");
String numberTorque = splitStr.nextToken();  //splitStr[1].replaceAll("\\D+","");
numberSpeed = numberSpeed.replaceAll("\\D+","");
numberTorque = numberTorque.replaceAll("\\D+","");

以前用分裂字符串做过。如果我在没有分隔符的情况下得到了大量的数据,应用程序就会崩溃,同时试图做不可能的事情。

  • 如何检查是否有分隔符,然后继续拆分或跳过它?

共有3个答案

左丘子平
2023-03-14

这是来自标记器文档的引用:StringTokenizer是一个遗留类,出于兼容性原因保留了它,尽管在新代码中不鼓励使用它

尝试使用字符串。split()

if(str.contains(DEILIMITER)) {
     String tab[] = str.split(DEILIMITER);
    //enter code here

}
邓才
2023-03-14

试试这个,我在我的应用程序中使用它。

String container = numberSpeed ;
String content = "\\D+";
boolean containerContainsContent = StringUtils.containsIgnoreCase(container, content);

如果它有分隔符,它将返回true,而false它没有。

将其与if语句一起使用。例如。

if(containerContainsContent){
//split it 
} else {
//skip it
}
万选
2023-03-14

可以通过contains()方法检查字符串中的delimeter

if(str.contains("_your_delimiter")) {   //for safe side convert your delimeter and search string to lower case using method toLowerCase()
     //do your work here
}
 类似资料:
  • 问题内容: 我有从.net应用程序A,B,C,D,E,F获取的字符串, 我想写一个SQL选择语句像 这在t-SQL中将不起作用,因为它使用不将值分开的一个字符串。有什么办法可以做到这一点? 问题答案: 它认为最简单的方法是动态SQL生成:

  • 我想显示一个项目列表,并使用“.” 我对此进行了研究,发现RecyclerView有一个内置的ItemDecoration功能。然而,我只能找到如何画一条线: 从我所看到的,您必须为此使用可绘制的,并且隐藏最后一个分隔符仍然不是很方便。 我发现的另一个选项是在RecyclerView的适配器内创建异构布局:https://guides.codepath.com/android/Heterogeno

  • 我的问题是:有没有一个分析器能够检测标记周围的分隔符(在我们的示例中),或者有没有一个分析器能够检测多字结构? 恐怕我们必须创建自己的分析器,但我不太知道该从哪里开始。

  • 我想在拆分函数调用中使用空格作为分隔符,但我想在单个单元格数组中输入某些单词;例如。 例如: 在带有一些分隔符的函数拆分调用之后,输出应如下所示: 我需要找到一个分隔符(或正则表达式模式)用于split函数。我如何着手做那件事?

  • 本文向大家介绍MySQL查询返回分隔符后的子字符串?,包括了MySQL查询返回分隔符后的子字符串?的使用技巧和注意事项,需要的朋友参考一下 用于在定界符后返回值。让我们首先创建一个表- 使用插入命令在表中插入一些记录- 使用select语句显示表中的所有记录- 输出结果 这将产生以下输出- 这是在定界符后返回子字符串的查询。 输出结果 这将产生以下输出-

  • 我正在构建一个名为“id”的查询参数,它是一个列表,所以我有类似于localhost:8080/application?id=1 (我知道我的方法不够,我需要写第一个?id=) 方法 我的问题是:为什么我收到这个错误在Collectors.joining(" 我正在使用OpenJDK