示例数据(包括换行符)
Alpha1 100 Bravo2 something else Charlie3 200 Delta4 A==1 Echo5 300 Foxtrot6
我想获得输出:
Alpha1 100 Bravo2 something else Charlie3 200 Delta4 A==1 Echo5 300 Foxtrot6
模式是:
AlphaNumeric Numeric AlphaNumeric value that is not a single alphanumeric "word"
前三部分很简单 - (\w+)\s+(\d+)\s+(\w+)\s+
- 但我不知道如何拥有条件第四组。这可能吗?如果是这样,怎么样?
答案 0 :(得分:3)
这种模式对我有用:
(\w+)\s+(\d+)\s+(\w+)(\s+([\w\s]+ \w+$))?
在:
在:
当然,\w
包含下划线,因此如有必要,请将\w
替换为[a-z0-9]
。
<强>更新强>
这种模式更具体,应该更可靠:
(\w+)\n(\d+)\n(\w+)(\n([^\n]*[^\w\n][^\n]*))?
在:
在: