我有這樣的文字:正則表達式 - 更改值
<script type="text/javascript" id="wordpress_grazit_script">
var dbnurls = [];
var dbnanchors = [];
dbnurls.push('url');
dbnanchors.push('anchor');
var script = document.createElement("script");
script.setAttribute("src", dbn_protocol+"path to js");
script.setAttribute("type", "text/javascript");
script.setAttribute("id", "grazit_script");
document.getElementById("my-id").parentNode.appendChild(script);
</script>
,我需要更換dbn_protocol +「路徑js的」別的東西。
我試圖使用這種匹配模式,但它匹配所有的方式到最後);
"script\\.setAttribute\\([\"']src[\"'],(.*[^\\);])(\\);)(.*)"
我需要spcify,我需要這個表達式在C#.NET
謝謝
你用什麼語言來處理腳本文本?它也是JavaScript,還是別的? – lurker
調查非貪婪匹配(http://msdn.microsoft.com/en-us/library/3206d374.aspx)。目前你的'。*'會抓住所有可能的東西,你希望它抓住最小的可能數量,所以你需要'。*?'。 – Chris
此外,爲什麼不只是匹配模式''dbn_protocol +「路徑到js」'並替換而不是做更復雜的事情? – Chris