2017-10-16 56 views
1

我有一个游戏需要在XML进行格式化,以以下格式的会话脚本...自动换定制XML标签和编号他们

<line id='1'> .............. </line> 
<line id='2'> .............. </line> 
<line id='3'> .............. </line> 
.... 
<line id='n'> .............. </line> 

会话脚本我已经给现在写以简单的格式,我只需要在上面的XML标签中包装每行。

有没有办法让这个过程自动化?

回答

1

您可以通过两个步骤来实现。首先,在文本文件的每一行的开头添加一个行号。然后,将每行包装在您需要的<line> XML标签中。

要生成行号,可以使用列编辑器模式。首先,插入空格每一行的开始通过此查找和替换:

查找:

(.*) 

替换:

$1 (single space followed by $1) 

然后使用列编辑模式中插入在每行的开始处生成行号。有关如何执行此操作的更多信息,请参阅here。在这一点上,你的数据应该是这个样子:

1 Here is line one. 
2 Here is line two. 
3 Here is line three. 
... 
111 Here is line one hundred eleven. 

现在你可以做第二个的查找和替换包裹在<line>代码中每一行:

查找:

([0-9]+)\s+(.*) 

替换:

<line id='$1'>$2</line> 
+0

谢谢,但我无法使其正常工作。第一步在每行中给我一个“s”,第二步不要用标签包住所有的行(只有第1-9行)。你可以用下面的例子来测试吗? https://pastebin.com/mYzeedSV请注意,引号仍然需要。 –

+0

@Ran_TH我有一个错字。请再次尝试我的答案。 –

+0

好吧,现在可以使用!但是,当添加行号时,它会为1-9行添加双倍空间,因此最终结果中会有空白。 https://i.imgur.com/dPNMahh.jpg –