java - 使用 Regex 和 indexOf 拆分字符串

标签 java string split substring indexof

我有一个简单的字符串 Ex。 1.0.0.2 我只想拆分和检索字符串的一部分: output: 1.0.0 基本上我想删除第三个 . 之后的所有文本。我尝试使用 split() 函数,计算 . 的出现次数,如果大于 2,则获取 indexOf() 第三点和 子字符串()。有没有更简单或更快的方法来实现这一目标?也许使用 regEx

编辑: 我不知道会有多少个点。

最佳答案

如果您不确定是否会正好是三个点 — 因此您不能使用 lastIndexOf() — 那么这是一个基于正则表达式的解决方案:

final Matcher m = Pattern.compile("^[^.]*(?:[.][^.]*){0,2}").matcher(input);
m.find(); // guaranteed to be true for this regex
final String output = m.group(0);

关于java - 使用 Regex 和 indexOf 拆分字符串,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14756712/

相关文章:

java - 时间不一致

java - 如何在 Java 简单日期格式中使用偏移时间

arrays - 如何在T-SQL中分割字符串并保存到数组中

perl - 在 Perl 中使用拆分和修剪进行映射

java - 无法 Intent 下一个布局

javac 声称我没有覆盖抽象类实现中的方法,而我显然是

java - 服务器响应 JSON 字符串列表解析

c# - 如何将字符串设置为枚举变量?

php - 在 PHP 中查找字符串中的模式的正则表达式

Mysql 将列拆分为 3 列以便在 phpMyAdmin 中查看