English 中文(简体)
缩略语
原标题:VBscript regex replace

我不知道为什么这只适用于最后审理,而不是像我所期望的那样。 感谢任何帮助。

www.un.org/Depts/DGACM/index_spanish.htm Input string:

<a href="http://www.scirra.com" target="_blank" rel="nofollow">http://www.scirra.com</a><br /><br />
<a href="http://www.scirra.com" target="_blank" rel="nofollow">http://www.scirra.com</a><br /><hr>

Regex:

 SEO scirra links
Dim regEx
Set regEx = New RegExp

  BB code urls
With regEx
    .Pattern = "<a href=""http://www.scirra.com([^]]+)"" target=""_blank"" rel=""nofollow"">"
    .IgnoreCase = True
    .Global = True
    .MultiLine = True
End With
strMessage = regEx.Replace(strMessage, "<a href=""http://www.scirra.com$1"" target=""_blank"" title=""Some value insert here"">")

set regEx = nothing

<<>Output>:

<a href="http://www.scirra.com" target="_blank" rel="nofollow">http://www.scirra.com</a><br /><br />
<a href="http://www.scirra.com" target="_blank" title="Some value insert here">http://www.scirra.com</a><br /><hr>

Can anyone shed light on why it s only adding the title to the last found instance? (I ve tested with more, always just applies to last one)

最佳回答

其原因是:

...a.com-->([^]]+)<--

您在投入中一劳永逸地尝试与并非“<代码>>的的所有内容相匹配。 由于在您的投入中根本没有>,因此它吞 everything了一切(即,甚至新线),但必须背后,才能满足您的其余部分,这意味着它可追溯到last> Target=_blank”......

如果你想要取代<条码>rel=“nofollow”,并允许在<条码>后面的任何途径:http://www.scirra.com,则你可以使用这一条码:

(<a href="http://www.scirra.com((/[^/"]+)*/?)" target="_blank" )rel="nofollow">

改为:

$1title="Some value insert here">

现行法规:

Dim regEx
Set regEx = New RegExp

  BB code urls
With regEx
    .Pattern = "(<a href=""http://www.scirra.com((/[^""/]+)*/?)"" target=""_blank"" )rel=""nofollow"">"
    .IgnoreCase = True
    .Global = True
    .MultiLine = True
End With
strMessage = regEx.Replace(strMessage, "$1title=""Some value insert here"">")

但请注意,这在所替换的URLs中具有很大的限制性。 例如,目标内容是否可能有其他内容,或有更多的属性?

问题回答

暂无回答




相关问题
Uncommon regular expressions [closed]

Recently I discovered two amazing regular expression features: ?: and ?!. I was curious of other neat regex features. So maybe you would like to share some tricky regular expressions.

regex to trap img tag, both versions

I need to remove image tags from text, so both versions of the tag: <img src="" ... ></img> <img src="" ... />

C++, Boost regex, replace value function of matched value?

Specifically, I have an array of strings called val, and want to replace all instances of "%{n}%" in the input with val[n]. More generally, I want the replace value to be a function of the match ...

PowerShell -match operator and multiple groups

I have the following log entry that I am processing in PowerShell I m trying to extract all the activity names and durations using the -match operator but I am only getting one match group back. I m ...

Is it possible to negate a regular expression search?

I m building a lexical analysis engine in c#. For the most part it is done and works quite well. One of the features of my lexer is that it allows any user to input their own regular expressions. This ...

regex for four-digit numbers (or "default")

I need a regex for four-digit numbers separated by comma ("default" can also be a value). Examples: 6755 3452,8767,9865,8766,3454 7678,9876 1234,9867,6876,9865 default Note: "default" ...

热门标签