Problemer med Regex.Replace af JavaScript
Basalt set vil jeg fjerne nogle SharePoint elementer fra HTML-kodenJeg fjerner ViewState osv., men vil også fjerne nogle standard SharePoint JS filer og CSS. Via. internettet har jeg fundet frem til nogle forskellige måder at gøre det på og har fundet ud af at fjerne alt undtagen SharePoint javascriptet.. Jeg håber I kan hjælpe mig ... Prøv mig frem med en kode som den her:
html = Regex.Replace(html, @"<script[^>]*src=""/_layouts/1033/.*?></script>\s*", "");
Men den virker ikke og giver mig fejl .. Det er filer som WebResource.axd og init.js, der skal fjernes. Koden er følgende:
<%@ Page Language="C#" ContentType="text/html" ResponseEncoding="UTF-8" %>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
<title>Untitled Document</title>
<script runat="server" language="c#">
protected override void Render(HtmlTextWriter writer)
{
using (HtmlTextWriter htmlwriter = new HtmlTextWriter(new System.IO.StringWriter()))
{
base.Render(htmlwriter);
string html = htmlwriter.InnerWriter.ToString();
// removing of all hidden MSO... and __SPCEditMenu fields for page editing
html = Regex.Replace(html, @"<input type=""hidden"" name=""(MSO|__SPSCEditMenu|__VIEWSTATE|__EVENTTARGET|__EVENTARGUMENT|__REQUESTDIGEST).*?/>\s*", String.Empty);
// removes extra /1033/ CSS.
html = Regex.Replace(html, @"<link .*?href=""/_layouts/1033.*? rel=""stylesheet""/>", "");
writer.Write(html.Trim());
}
}
</script>
</head>
<input type="hidden" name="__SPSCEditMenu" id="__SPSCEditMenu" value="true" />
<input type="hidden" name="MSOWebPartPage_PostbackSource" id="MSOWebPartPage_PostbackSource" value="" />
<input type="hidden" name="MSOTlPn_SelectedWpId" id="MSOTlPn_SelectedWpId" value="" />
<input type="hidden" name="MSOTlPn_View" id="MSOTlPn_View" value="0" />
<input type="hidden" name="MSOTlPn_ShowSettings" id="MSOTlPn_ShowSettings" value="False" />
<input type="hidden" name="MSOGallery_SelectedLibrary" id="MSOGallery_SelectedLibrary" value="" />
<input type="hidden" name="MSOGallery_FilterString" id="MSOGallery_FilterString" value="" />
<input type="hidden" name="MSOTlPn_Button" id="MSOTlPn_Button" value="none" />
<input type="hidden" name="__EVENTTARGET" id="__EVENTTARGET" value="" />
<input type="hidden" name="__EVENTARGUMENT" id="__EVENTARGUMENT" value="" />
<input type="hidden" name="__REQUESTDIGEST" id="__REQUESTDIGEST" value="0x046616CC476E811A09929B12A414476254C102F885265E9B7140452956ADCCF9DA7701F5FF05FB7EEF7420917C583425B976A96BBA067D0278327CDF18A67264,25 Mar 2011 13:13:18 -0000" />
<input type="hidden" name="MSOAuthoringConsole_FormContext" id="MSOAuthoringConsole_FormContext" value="" />
<input type="hidden" name="MSOAC_EditDuringWorkflow" id="MSOAC_EditDuringWorkflow" value="" />
<input type="hidden" name="MSOSPWebPartManager_DisplayModeName" id="MSOSPWebPartManager_DisplayModeName" value="Browse" />
<input type="hidden" name="MSOWebPartPage_Shared" id="MSOWebPartPage_Shared" value="" />
<input type="hidden" name="MSOLayout_LayoutChanges" id="MSOLayout_LayoutChanges" value="" />
<input type="hidden" name="MSOLayout_InDesignMode" id="MSOLayout_InDesignMode" value="" />
<input type="hidden" name="MSOSPWebPartManager_OldDisplayModeName" id="MSOSPWebPartManager_OldDisplayModeName" value="Browse" />
<input type="hidden" name="MSOSPWebPartManager_StartWebPartEditingName" id="MSOSPWebPartManager_StartWebPartEditingName" value="false" />
<input type="hidden" name="__VIEWSTATE" id="__VIEWSTATE" value="/wEPDwUKLTM4NTU0ODUwNw9kFgJmD2QWAgIBD2QWBAIBD2QWBAIFD2QWAmYPZBYCAgEPFgIeE1ByZXZpb3VzQ29udHJvbE1vZGULKYgBTWljcm9zb2Z0LlNoYXJlUG9pbnQuV2ViQ29udHJvbHMuU1BDb250cm9sTW9kZSwgTWljcm9zb2Z0LlNoYXJlUG9pbnQsIFZlcnNpb249MTIuMC4wLjAsIEN1bHR1cmU9bmV1dHJhbCwgUHVibGljS2V5VG9rZW49NzFlOWJjZTExMWU5NDI5YwFkAggPZBYMAgEPFgIeB1Zpc2libGVoZAIDDxYCHwFoZAIFDxYCHwFoZAIHDxYCHwFoZAIJDxYEHwALKwQBHwFoZAILDxYCHwFoZAIDD2QWAgIGDw8WBB4IQ3NzQ2xhc3MFFmRvdGNvbSBjdDEgZGlzcGxheW1vZGUeBF8hU0ICAmQWCgIBD2QWAgIBD2QWAgICDxYCHwFoZAIDD2QWAgIBD2QWBAIBD2QWCAIDDxYCHgtfIUl0ZW1Db3VudAICFgRmD2QWBGYPFQMZVXAgdG8gNDAlIG9mZiByb29tIHJhdGVzIQB+PGRpdj5TdGF5IGluIG9uZSBvZiBvdXIgbHV4dXJpb3VzIGhvdGVscyB3aGlsZSBlbmpveWluZyBkaXNjb3VudHMgb2YgdXAgdG8gNDAlIG9uIHJvb20gcmF0ZXMgZnJvbSBKYW51YXJ5IDUgdG8gTWFyY2ggMTUuPC9kaXY+ZAIBDxYCHgRocmVmBThodHRwOi8vd3d3LmtlbXBpbnNraS5jb20vZW4vUHJvbW90aW9uL1BhZ2VzL05ld1llYXIuYXNweGQCAQ9kFgRmDxUDIUJNVyBYMyBHYW1lcyAtIDI3LiBBcHJpbCAtIEdlbmV2YQBsRG9u4oCZdCBtaXNzIGZpdmUgZGF5cyBvZiBleGNpdGluZyBjb250ZXN0cyBhdCB0aGUgQk1XIFgzIEdhbWVzIGluIEdlbmV2YSBmcm9tJm5ic3A7QXByaWwgMjcgdG8gTWF5IDEsIDIwMTEuZAIBDxYCHwUFUGh0dHA6Ly93d3cua2VtcGluc2tpLmNvbS9lbi9BYm91dCUyMEtlbXBpbnNraS9QYXJ0bmVyc2hpcHMvUGFnZXMvQk1XWDNHYW1lcy5hc3B4ZAIEDxYCHwQCAxYGZg9kFgRmDxUDDEVBUkxZIEJPT0tFUgBRPGRpdj5Cb29rIEVhcmx5IGFuZCBzYXZlIHVwIHRvIDIwJSBvbiB5b3VyIEx1eHVyeSB2YWNhdGlvbiBvciBidXNpbmVzcyB0cmlwPC9kaXY+ZAIBDxYCHwUFRS9lbi9QYWdlcy9DdXJyZW50UGFja2FnZXMuYXNweCNobDZiMDBjYjgxLThhMDEtNDNjNy05MzQ0LTMxZGUzYjJjYTQ3YmQCAQ9kFgRmDxUDHFN0LiBNb3JpdHogLSBMaW1pdGVkIEVkaXRpb24AWjxkaXY+U2F2ZSAxMCUgLSZuYnNwO0JlbmVmaXQgZnJvbSB0aGUgbWlkd2VlayBzcGVjaWFscyB0aHJvdWdob3V0IHRoZSB3aW50ZXIgc2Vhc29uITwvZGl2PmQCAQ8WAh8FBUUvZW4vUGFnZXMvQ3VycmVudFBhY2thZ2VzLmFzcHgjaGw3ZGMzYjhiNC1lMzVhLTRlNzEtYjNlZi00ZTdlOTg3NDUxOWZkAgIPZBYEZg8VAxJTVUlURSBFQVJMWSBCT09LRVIAUzxkaXY+TGl2aW5nIGluIGEgU3VpdGUgLSBFbmpveSByZW1hcmthYmxlIGV1cm9wZWFuIGZsYWlyIGFuZCBzYXZlIHVwIHRvIDQwJSohPC9kaXY+ZAIBDxYCHwUFRS9lbi9QYWdlcy9DdXJyZW50UGFja2FnZXMuYXNweCNobDJjYTEzN2U2LTRlZmQtNDkzZC1hYTk3LTllYWFmNDI1YWUzZGQCBQ8WAh8EAgMWBmYPZBYEZg8VAwxFQVJMWSBCT09LRVIAUTxkaXY+Qm9vayBFYXJseSBhbmQgc2F2ZSB1cCB0byAyMCUgb24geW91ciBMdXh1cnkgdmFjYXRpb24gb3IgYnVzaW5lc3MgdHJpcDwvZGl2PmQCAQ8WAh8FBUUvZW4vUGFnZXMvQ3VycmVudFBhY2thZ2VzLmFzcHgjaGw2YjAwY2I4MS04YTAxLTQzYzctOTM0NC0zMWRlM2IyY2E0N2JkAgEPZBYEZg8VAxxTdC4gTW9yaXR6IC0gTGltaXRlZCBFZGl0aW9uAFo8ZGl2PlNhdmUgMTAlIC0mbmJzcDtCZW5lZml0IGZyb20gdGhlIG1pZHdlZWsgc3BlY2lhbHMgdGhyb3VnaG91dCB0aGUgd2ludGVyIHNlYXNvbiE8L2Rpdj5kAgEPFgIfBQVFL2VuL1BhZ2VzL0N1cnJlbnRQYWNrYWdlcy5hc3B4I2hsN2RjM2I4YjQtZTM1YS00ZTcxLWIzZWYtNGU3ZTk4NzQ1MTlmZAICD2QWBGYPFQMSU1VJVEUgRUFSTFkgQk9PS0VSAFM8ZGl2PkxpdmluZyBpbiBhIFN1aXRlIC0gRW5qb3kgcmVtYXJrYWJsZSBldXJvcGVhbiBmbGFpciBhbmQgc2F2ZSB1cCB0byA0MCUqITwvZGl2PmQCAQ8WAh8FBUUvZW4vUGFnZXMvQ3VycmVudFBhY2thZ2VzLmFzcHgjaGwyY2ExMzdlNi00ZWZkLTQ5M2QtYWE5Ny05ZWFhZjQyNWFlM2RkAgYPFgIfBAICFgRmD2QWBGYPFQMSU1VJVEUgRUFSTFkgQk9PS0VSAFM8ZGl2PkxpdmluZyBpbiBhIFN1aXRlIC0gRW5qb3kgcmVtYXJrYWJsZSBldXJvcGVhbiBmbGFpciBhbmQgc2F2ZSB1cCB0byA0MCUqITwvZGl2PmQCAQ8WAh8FBUUvZW4vUGFnZXMvQ3VycmVudFBhY2thZ2VzLmFzcHgjaGwyY2ExMzdlNi00ZWZkLTQ5M2QtYWE5Ny05ZWFhZjQyNWFlM2RkAgEPZBYEZg8VAwxFQVJMWSBCT09LRVIAUTxkaXY+Qm9vayBFYXJseSBhbmQgc2F2ZSB1cCB0byAyMCUgb24geW91ciBMdXh1cnkgdmFjYXRpb24gb3IgYnVzaW5lc3MgdHJpcDwvZGl2PmQCAQ8WAh8FBUUvZW4vUGFnZXMvQ3VycmVudFBhY2thZ2VzLmFzcHgjaGw2YjAwY2I4MS04YTAxLTQzYzctOTM0NC0zMWRlM2IyY2E0N2JkAgMPZBYEAgEPZBYEAgEPFgIfAAsrBAFkAgMPFgIfAAsrBAFkAgMPZBYEAgEPFgIfAAsrBAFkAgMPFgIfAAsrBAFkAgUPZBYCAgEPZBYCAg8PFgIfBQU6aHR0cHM6Ly9zZWN1cmUua2VtcGluc2tpLmNvbS9DT1JQL2VuL3JlcXVlc3RfcGFzc3dvcmQuaHRtbGQCBw9kFggCAw8PFgIeC05hdmlnYXRlVXJsBS9odHRwczovL3NlY3VyZS5rZW1waW5za2kuY29tL0tJU0EvZW4vaW5kZXguaHRtbGRkAgcPZBYCAgMPZBYCAgEPDxYCHwFnZBYEAgEPDxYCHwFoZBYcAgEPDxYCHwFoZGQCAw8WAh8BaGQCBQ8PFgIfAWhkZAIHDxYCHwFoZAIJDw8WAh8BaGRkAgsPDxYCHwFoZGQCDQ8PFgIfAWhkZAIPDw8WBB4HRW5hYmxlZGgfAWhkZAIRDw8WAh8BaGRkAhMPDxYEHwdoHwFoZGQCFQ8PFgIfAWhkZAIXDxYCHwFoZAIZDxYCHwFoZAIbDw8WAh8BZ2RkAgMPDxYCHwFnZBYGAgEPDxYCHwFnZGQCAw8PFgYeGHBlcnNpc3RlZEVycm9yQWN0aW9uVHJlZWQeG3BlcnNpc3RlZEVycm9yQWN0aW9uVHJlZUlkc2QfAWdkZAIFDw8WAh8BZ2RkAgkPFgIfAWgWAgIDD2QWAmYPFgIeBWNsYXNzBRl0b3BuYXYgY2xlYXJmaXggZnVsbHdpZHRoFgZmD2QWAmYPFgIeBFRleHQFBEhvbWVkAgQPZBYEZg8WAh8BaGQCAg8WAh8BaGQCBQ9kFgICAQ8WAh8BaBYCZg9kFgQCAg9kFgICAw8WAh8BaGQCAw8PFgIeCUFjY2Vzc0tleQUBL2RkAgsPZBYEAgEPZBYCZg8WAh8KBRl0b3BuYXYgY2xlYXJmaXggZnVsbHdpZHRoFgZmD2QWAmYPFgIfCwUESG9tZWQCBA9kFgRmDxYCHwFoZAICDxYCHwFoZAIFD2QWAgIBDxYCHwFoFgJmD2QWBAICD2QWBgIBDxYCHwFoZAIDDxYCHwFoZAIFDxYCHwFoZAIDDw8WAh8MBQEvZGQCBQ8PFgQfAgUHbWFpbm5hdh8DAgJkZAIXD2QWCAIBDxYCHwFoZAIDD2QWAgIBDxYEHwUFI2h0dHA6Ly93d3cua2VtcGluc2tpLmNvbS9lbi9kcmVzZGVuHglpbm5lcmh0bWwFKUhvdGVsIFRhc2NoZW5iZXJncGFsYWlzIEtlbXBpbnNraSBEcmVzZGVuZAIPD2QWAgIJDxYCHwFnFgJmDxYCHwUFPGh0dHA6Ly93d3cua2VtcGluc2tpLmNvbS9lbi9jb250YWN0dXMvUGFnZXMvQ29udGFjdEZvcm0uYXNweGQCEQ88KwASAQA8KwAJAQAPFgIfAWhkZGTJH+NXCicG9wmrr+rVyL0eb43DzQ==" />
<link href="/_layouts/1033/styles/Menu.css?rev=jQ88ZMCVEKRn%2FLeYuywntQ%3D%3D" rel="stylesheet"/>
<script src="/_layouts/1033/init.js?rev=qX%2BG3yl4pldKy9KbPLXf9w%3D%3D"></script>
<script type="text/javascript" language="javascript" src="/_layouts/1033/msstring.js?rev=fcpiBo%2BQtJqYMECz%2BNiH7Q%3D%3D"></script>
<script type="text/javascript" language="javascript" src="/_layouts/1033/non_ie.js?rev=yfNry4hY0Gwa%2FPDNGrqXVg%3D%3D"></script>
<h1></h1><script src="/WebResource.axd?d=PCgIEmCWf1L3tTbJVFg6dw2&t=634132956547557233" type="text/javascript"></script>
<body>
<p>zHello World!</p>
</body>
</html>