我有以下as3函数将链接转换为普通html,以便链接具有“event:”前缀,以便我可以使用TextEvent侦听器捕获它们。as3中的正则表达式忽略与特定的字符串匹配的匹配
protected function convertLinks(str:String):String
{
var p1:RegExp = /href|HREF="(.[^"]*)"/gs;
str = str.replace(p1,'HREF="event:$1"');
return str;
}
例如
<a href="http://www.somedomain.com">
被转换为
<a href="event:http://www.somedomain.com">
这一切正常,但我有已经被转换链接的问题。
我需要排除在那里我有一个字符串,如
<a href="event:http://www.somedomain.com">
接通功能的情况下,因为在这一刻被转换到
<a href="event:event:http://www.somedomain.com">
打破了链接。
我该如何修改我的函数,以便在开始时与'event:'的链接不匹配并保持不变?
polygenelubricants,非常感谢,您的原始代码行正是我所需要的,因为lookahead是支持的。 也谢谢你的附加信息。 RegEx似乎是一个非常具体的思维方式,我还没有完全掌握自己的想法。你真的需要正确地学习所有的语法,所以谢谢你的详细解释。 – Stanz 2010-08-24 12:49:24