java对如何准确使用正则表达式感到困惑?
所以我一直在研究很多关于正则表达式的搜索,但是我仍然很困惑如何设置它们。我遇到的问题是,我试图转换输入文件中给定的文本:
(42, 10) d (23, 1) (123, 4) (32, 10) d (12, 9)
这样我就可以将它粘贴到一个字符串数组中,它如下所示:
[42, 10, d, 23, 1, 123, 4, 32, 10, d, 12, 9]
有什么建议吗
起初我尝试使用分隔符来去掉括号和逗号,但是,分隔符将每个值放在一整行上,很遗憾,这不是我的目标。我基本上是试图忽略这些特殊字符,这样我就可以将例如42分配给int a,10分配给int b
# 1 楼答案
你用什么语言?编辑:nvm我看到你在使用Java。前提仍然存在,关于如何做,我将在Java版本的基础上再与您联系
在perl中,这将非常简单
Java版本:
虽然我猜这并不能完全回答你的问题,因为它不使用正则表达式。它只使用替换和拆分
# 2 楼答案
如果您真的需要正则表达式,那么当您的数据更复杂时,这种方法效果更好
注意:我只处理字母数字数据,因为
d
似乎没有什么特殊的含义输出
如果您确实希望保留该数据,请使用
List<String>