【发布时间】:2012-05-14 16:59:17
【问题描述】:
大家下午好,
我注意到这里已经有一些类似的问题,但到目前为止对我没有太大帮助。我正在尝试操作由现有方法返回的字符串以将其格式化为可读形式。因此,例如,我正在尝试创建一个 String replaceAll() 正则表达式,它将采用字符串
"<ds:AddressLine1>Birkmire Farm</ds:AddressLine1><ds:AddressLine2>Some Village</ds:AddressLine2><ds:AddressLine3>Wigfield</ds:AddressLine3><ds:AddressLine4>Cumbria</ds:AddressLine4><ds:UKpostcode>CA9 1EJ</ds:UKpostcode>"
并将其转换为...
Birkmire Farm, Some Village, Wigfield, Cumbria, CA9 1EJ
我设想的方法是分三个步骤,首先将所有结束标记替换为“”,然后将所有开始标记替换为“,”,最后使用 String replaceFirst 删除第一个逗号和放置的空格在字符串的前面。
我遇到的问题是正则表达式,我需要制定一个模式来识别任何开始标签 ie 和一个模式来识别任何结束标签 ie 。对此的任何帮助将不胜感激。
【问题讨论】:
-
尽量不要将正则表达式与非正则语言混用。
-
regex 不是解析 xml 的正确工具。使用 xml 解析器
-
好了,以上几点都明白了,贴出的链接文章说的很清楚了:)。但这不是我正在解析的实际 xml 文档,它只是我在问题中给出的字符串。约翰王子,谢谢你的建议,我现在正在调查。如果我确实用我的方法吠叫了错误的树,那么任何关于这样做的最佳方法的进一步建议将不胜感激。
标签: java xml regex string replaceall