【发布时间】:2016-07-30 14:03:51
【问题描述】:
TLDR - 仅当描述中提到短语“办公室”时,才在名称和描述标记之间插入样式标记及其内容(参见代码块),以便将当前的 Google 地球地标从默认的黄色更改为自定义一个...
嗨,伙计们,我在弄清楚这个问题时遇到了一些麻烦…… 使用 Notepadd++ 我正在编辑一个 Google 地球 kml 文件,其中有许多遵循这种 XML 模式的地标:
<Placemark>
<name>Jim</name>
<description>Jim goes to the office every day</description>
<TimeSpan>
<begin>2016-06-20T12:00:00Z</begin>
<end>2016-06-25T12:00:00Z</end>
</TimeSpan>
<Point>
<coordinates>123412341234,123412341234,1</coordinates>
</Point>
</Placemark>
我想找到短语“办公室”的每个实例。如果找到该文本,则会以 Google 地球可以读取的方式在名称和描述之间插入以下代码。
<Style id="customstyle">
<IconStyle>
<color>a1ff00ff</color>
<scale>1.5</scale>
<Icon>
<href>http://maps.google.com/mapfiles/kml/shapes/shaded_dot.png</href>
</Icon>
</IconStyle>
</Style>
这样做会将地标从默认地标更改为自定义地标。
到目前为止,我发现的所有教程都是关于如何使用 Notepad++ 正则表达式将单词或短语添加到行首或行尾的说明,或者说明如何使用 \n 在下一行插入文本. 但是,我认为我的情况是独一无二的,因为我想在行上方插入我的文本。 (更具体地说,在名称和描述标签之间插入我的文字)
最终结果看起来像这样(注意我想添加的文本现在是如何位于名称标签和描述标签之间的)
<Placemark>
<name>Jim</name>
<Style id="customstyle">
<IconStyle>
<color>a1ff00ff</color>
<scale>1.5</scale>
<Icon>
<href>http://maps.google.com/mapfiles/kml/shapes/shaded_dot.png</href>
</Icon>
</IconStyle>
</Style>
<description>Jim goes to the office every day</description>
<TimeSpan>
<begin>2016-06-15T12:00:00Z</begin>
<end>2016-06-20T12:00:00Z</end>
</TimeSpan>
<Point>
<coordinates>2135125,1234523451,12341234</coordinates>
</Point>
</Placemark>
现在所有遵循该模式的地标都将具有与默认地标不同类型的地标(我将不再头疼)。
提前谢谢大家。
【问题讨论】:
标签: regex notepad++ kml google-earth