以下是我的数据集中的三个示例行:
| | | | featureB >= 16104.33 : 18873.52 (1/0)
| featureA >= 17980.32
featureC = ABC BLAH BLAH blA'H $blah 4/ blah blah
Run Code Online (Sandbox Code Playgroud)
我试图想出一个模式匹配器,它将捕获以下内容:
我提出了以下模式,但它无法捕获特征值:
Pattern.compile("(?:\\| )*(.*?)(>?=|<)((?!:).)*(?::?)(.*?)(?:\\(.*\\))?")
Run Code Online (Sandbox Code Playgroud)
所以基本上我的目标是group(1)包含要素名称,group(2)包含关系,group(3)包含要素值,以及group(4)包含结果(如果存在).
目前group(1),group(2),并group(4)产生我期待但从group(3)未被捕获的东西,并且总是空的.
我将不胜感激任何帮助/建议.
根据您精心起草的要求,我想出了这个正则表达式来捕获所有 4 个组(第 4 个是可选组):
^[ |]*(\w+)\s*(>?=|<)\s*([^:]+)(?:\s*:\s*([^()]*))?
Run Code Online (Sandbox Code Playgroud)
Java模式:
Pattern p = Patttern.compile("^[ |]*(\\w+)\\s*(>?=|<)\\s*([^:]+)(?:\\s*:\\s*([^(]+))?.*$");
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
112 次 |
| 最近记录: |