1

AS3 | 闪光 CS6 | 土坯空气 3.5

我有一个很长的字符串,最终将被格式化为 XML。在字符串中,我有几个类似以下内容的实例:

<title>Some title</title>

//the following line would need changed
<title>Some title</garbage>

<title>Some title2</title>
<title>Some title3</title>

//the following line would need changed
<title>Someone's title & (his info)</garbage>

//the following line should NOT change
<another title>something else</garbage>

我需要搜索和替换所有这些:

<title>(whatever is here)</garbage>

并制作它们:

<title>(whatever is here)</title>

如您所见,我不能简单地搜索和替换“垃圾”,因为它不适用于每个实例...我只想替换那些使用 <title> ...而不是 <another title> 也请请注意,不确定 <title> 和 </garbage> 之间的字符是什么

所以虽然我知道这不起作用......我在想一些事情:

str = str.replace(/<title>\w+<\/garbage>/, "<title>\w+<\/title>");

我认为答案在此页面上的“捕获子字符串”下,但到目前为止还没有运气: http ://www.sevenson.com.au/actionscript/testing-regular-expressions/

在这一点上,我似乎只是在随机插入一些东西,所以寻求帮助更有意义。

任何建议表示赞赏。

4

1 回答 1

0

匹配<title>前后的任何符号</garbage>

str = str.replace(/(<title>.[^<]+)<\/garbage>/, "$1</title>");

示例http://regexr.com?33nog

于 2013-02-11T07:52:05.363 回答