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

何时使用:使用分隔符的子串或拆分?哪个更好?[关闭]

习淇
2023-03-14

在我最近的经验中,我使用了使用分隔符的拆分函数和子字符串函数。只是想知道是否有人能说明哪一个更好,在什么条件下?

编辑:

我主要关心的是这些函数对性能和代码质量的影响。(如果我可以使用其中的任何一个,应该首选哪一个?如果有任何其他决定因素,请提及。)

顺便说一句,我和一个同事讨论过这个问题,他说他不喜欢使用子串。这就是我的想法...

仅供参考,我有一个包含网址的长ID,以及两个不同的ID,我需要分别获取和存储。网址是相同的,每个ID的长度相同,因此长度和索引将是恒定的,所以我知道确切的索引位置,并且在ID之间还有像#这样的字符,我可以用它们作为分隔符。ID看起来像:

http://xyz.com#12345#ASDFG

所以,我有一个选择。我使用了分隔符#分割,但想知道什么是更好的选择。

共有3个答案

颜举
2023-03-14

如果您知道索引,那么最好使用subString(),因为spilt()会创建一个字符串数组

欧阳乐生
2023-03-14

这完全取决于工作的正确工具是什么,天气与否,你可以预先确定在哪里拆分字符串!

Split将创建一个字符串数组,每个元素包含所选字符之间的值。

Substring将根据您提供的索引返回部分字符串值。

至于适用的场景,请查看dasblinkenlight提供的一个很好的解释。

东郭鹤龄
2023-03-14

没有比这更好的了。两者都一样好,但主要取决于你使用它的场景。

当您知道索引时,请使用substring

内部创建Pattern.compile,这是一个昂贵的操作。另外,拆分()将字符串作为参数,但此字符串被解释为模式

 类似资料:
  • 如何将过滤器列表拆分为单个过滤器元件?split2String在线程“main”java.util.regex中导致:异常。PatternSyntaxException:索引10或(|和)附近的未闭合组(

  • 问题内容: 如何在JavaScript中使用多个分隔符拆分字符串?我正在尝试在逗号和空格上进行拆分,但是AFAIK,JS的拆分功能仅支持一个分隔符。 问题答案: 传递正则表达式作为参数: 编辑添加: 您可以通过选择数组的长度减去1来获得最后一个元素: …,如果模式不匹配:

  • 我有一个输入字符串,其中包含由分隔符(| |)分隔的4个ID。我使用的代码如下: 但有些情况下并非所有ID都存在,如: 在上面的场景中,拆分不会分为4个部分,并且无法判断拆分数组中缺少哪个id。 有人可以帮助一个有效的解决方案。

  • 问题内容: 我有一个值为的字符串。我想将字符串分成两个字符串,值为的字符串和的值为字符串。 正确的功能/语法是什么? 我已经看过了,但是找不到将数据返回到两个单独的字符串中的实际语法。 问题答案: 该功能适用于:

  • 我是 Perl 的新手,但根据我阅读的文档,看起来 Perl 中的 split 函数要求正则表达式模式而不是字符串分隔符作为第一个参数,但我发现使用 之类的东西仍然可以正确拆分字符串。 基于此,我尝试使用可变分隔符(例如。< code>print (split($var,$ string))[0] where < code > $ var = ' ' )并发现它不起作用。我做错了什么? 谢谢! 编