删除正则表达式/正则表达式的一系列数字

时间:2014-02-21 13:50:44

标签: xml regex

我有一个XMLexport工具(PHP),可以将数据导出到XML字段。

可以找到并替换一些不必要的字符。但在这种情况下,字符并不总是相同的。

E.g。<xmlfield> {"1596":" maat XL </xmlfield> --> this must be <xmlfield> maat XL </xmlfield>

所以我想删除{"1596":"。只有数字代码会改变,例如{"1595":" {"844":"

解决方案是使用正则表达式“查找并替换”,但我不知道我必须使用哪个代码。

如果你能帮助我,请告诉我。

2 个答案:

答案 0 :(得分:0)

当我需要编制正则表达式时,我会使用此网站:RegExr

此代码将替换您想要的内容:

Regex reg = new Regex(@"\{\""\d+\"":\""");
reg.Replace(xmlString, string.Empty);

答案 1 :(得分:0)

要执行此操作的正则表达式为:\{"\d+"\:"根据您使用的工具或编程语言,您可能还必须转义"。 Java还需要使用另一个\转义\

如果您不熟悉正则表达式,请稍后解释一下:

某些字符(例如{:)需要进行转义(因此我们之前会添加\)。 \d匹配任何数字(0-9),+表示必须至少有一位数字(但可能更多)。

您可以使用RegExPlanet等在线工具来创建和测试正则表达式。

如果您只想在<xmlfield>标记内找到这些字符串(其中没有其他嵌套标记),您可以使用以下内容:<xmlfield>[^<]*\{"\d+"\:"[^<]*</xmlfield>