java - java中如何删除字符串中第一次出现字符后的内容?

标签 java string

我有一组字符串,每个字符串包含字母、数字和符号。我想提取字符串的内容,直到出现数字和前面的符号。这是一个例子:

Axis-1.4.5
Limo_9.5.6R
Dent-ist-0C.4E
Log4M-1.2.0
Hello-World-1.0

这些是我的琴弦。我想要的输出是:

Axis
Limo
Dent-ist
Log4M
Hello-World

我使用模式 replaceAll("\d","")replaceAll("[-+.^:,_]","") 来删除数字和符号。但我得到的结果是:

Axis
LimoR
DentistCE
LogM
HelloWorld

有人可以让我知道如何针对这种情况正确修剪字符串吗?

最佳答案

我认为 replaceFirst("[-+.^:,_]\d.*", "") 应该做你想要的。

您可以将其理解为“一个‘符号’后跟一个数字,然后是字符串中的所有其他内容。”

关于java - java中如何删除字符串中第一次出现字符后的内容?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38381569/

相关文章:

python - 在 Django models.py 中,default、null 和 blank 有什么区别?

.net - 有没有更好的方法来删除 .NET 中字符串的尾随部分?

java - string.replaceAll() 性能是否受到字符串不变性的影响?

java - 参数包含空格的运行时 exec

Javascript内联用空字符串替换未定义

java - 编程寻找数字 n1 的最小排列,但应大于另一个给定数字 n2;如果不可能,则打印 "Invalid"

java - 无法在 Spring Boot 中拦截和操作 HttpServletResponse

javascript - 拆分 JavaScript 变量的字符串内容并分配给单独的 JS 变量

Java程序读取前缀和后缀

java - 如何启动immediate = false组件?