⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 code.js

📁 BizIdea 是基于.net开发平台全新研发的企业级电子商务平台系统
💻 JS
📖 第 1 页 / 共 3 页
字号:
			function() {
					var s;
					if (arguments[3].substr(0,1) != "/")
						s = "<font color=\"#008000\">"+arguments[2]+ClearColorTag(arguments[3])+"</font>";
					else
						s = arguments[2]+arguments[3];
					return(arguments[1]+s);
				});
	str = str.replace(/(\/\*)([\s\S]*?)(\*\/)/g,
			function() {
					var s = arguments[1];
					if (arguments[2] != "")
						s = "<font color=\"#008000\">"+s+ClearColorTag(arguments[2])+arguments[3]+"</font>";
					else
						s += arguments[3];
					return(s);
				});
	return(str);
}

// 格式化值
function FormatValue(str)
{
    // 所有值(双引号或单引号之间的字符串)变为棕色
	str = str.replace(/(@?)(&quot;)(.*?)\2/g,
	function() {
		var s = arguments[3].replace(/<.*?>/g,"");
		return("<font color=\"#800000\">"+arguments[1]+arguments[2]+s+arguments[2]+"</font>");
	});
	return (str);
}

// 清除字符串中所有的颜色标签
function ClearColorTag(str)
{
    str = str.replace(/<\/?font.*?>/g,"");
    return (str);
}

//---------------------------------------   格式化VB.NET代码   ----------------------------------------
// 格式化VB.NET代码
function FormatVBDOTNET(str,canCollapse)
{	
    // 值变为棕色
    str = FormatValue(str);
    str = FormatCodeRemark_VBDOTNET(str);  //首先要格式化注释,否则会把GetHeader函数中的'也替换掉
	if (str.match(/Imports/g)!=null)//格式化Imports
		str = FormatImports(str,canCollapse);
	//格式化函数头
	str = FormatFunctionRemark_VBDOTNET(str);
	//格式化函数
    str = FormatBrace_VBDOTNET(str);
    //格式化Region窗体
    str = FormatRegion_VBDOTNET(str,canCollapse);
    // 给所有没有收缩功能的行的行头加图片
	str = str.replace(/(^|\n)([^<])/g,"$1<IMG src=\"InBlock.gif\" align=\"top\">$2");
	// 所有关键字变成蓝色
	var re = /\b(And|As|ByRef|Call|Case|Class|Const|Dim|Do|Each|Else|ElseIf|Empty|End|Eqv|Erase|Execute|ExecuteGlobal|Exit|Explicit|False|For|Get|Goto|If|Imp|In|Is|Let|Loop|Mod|Next|Not|Nothing|Null|On|Option|Or|Private|Public|Randomize|ReDim|Resume|Select|Set|Stop|Then|To|True|Until|Wend|While|With|Xor|Sub|Len|Right|Function|IsNull|IsEmpty|Left|Cint|Instr|Cstr|Chr|Error|Trim|Mid|Instrrev|LCase|UCase|Hex|Imports|Inherits|Protected|WithEvents|ByVal|Handles|MyBase|New|String|IsNothing|IsDbNull|Optional|Integer|Date|Overloads|Overrides|Friend|Me)\b/gi;
	str = str.replace(re,"<font color=\"#0000FF\">$1</font>");	
    //字符串中关键字颜色不变
    str = FormatKeyWords(str);
    //替换收缩图片
    str = FormatImage(str);
    return (str);
}

// 格式化Imports
function FormatImports(str)
{
	// 给Imports和正式代码之间的行的行头加上空白图片
	str = str.replace(/^([\s\S]*?)/g,
			function() {
				var s = arguments[1].replace(/(\n)([^I])/g,"$1<IMG src=\"None.gif\" align=\"top\">$2");
				s = s.replace(/(\n)([^I<])/g,"$1<IMG src=\"None.gif\" align=\"top\">$2");
				return(s);
			});
	// Imports加一个收缩功能
	str = str.replace(/^([\s\S]*?)\b(Imports\s)/gi,
			function() {
				var s = arguments[1].replace(/(.*)([^\n]*)$/g,"$2")
						+GetHeader(arguments[1].replace(/(.*)([^\n]*)$/g,"$2")+arguments[2],"...","CodeImports",false,true);
				return(s);
			});	
	var arr = str.match(/.*Imports.*/gi);
	if (arr!=null)
		str = str.replace(arr[arr.length-1],
			"<IMG src=\"ExpandedBlockEnd.gif\" align=\"top\">"+arr[arr.length-1]+"</span>");	
//	str = str.replace(/([\s\S]*\n)(Imports[\s\S]*?)\n/g,"$1<IMG src=\"ExpandedBlockEnd.gif\" align=\"top\">$2</span>");
	return(str);
}

// 格式化VB.NET的Region
function FormatRegion_VBDOTNET(str,canCollapse)
{
	// 替换Region处
	str = str.replace(/(.*)(#Region\s+)([^\r\n]*)/gi,	
		function() {				
				var s = GetHeader(arguments[1],arguments[3],"CodeRegion",canCollapse,false)
						+"<font color=\"#0000ff\">"+arguments[2]+"</font>"+arguments[3];
				return(s);
			});
	// 替换End Region处
	str = str.replace(/(.*)(#End Region)/gi,
		"<IMG src=\"ExpandedSubBlockEnd.gif\" align=\"top\"/>$1<font color=\"#0000ff\">$2</font></span>");
		
	return(str);
}


// 格式化VB.NET函数代码注释rem和'
function FormatCodeRemark_VBDOTNET(str)
{
    
	// 注释变为绿色
	str = str.replace(/('.*)/g,
			function() {
				return ("<font color=\"#008000\">" + arguments[1].replace(/<.*?>/g,"") + "</font>");
			});				
	str = str.replace(/(Rem\s.*)/gi,
			function() {
					return ("<font color=\"#008000\">" + arguments[1].replace(/<.*?>/g,"") + "</font>");
				});	
	return(str);
}

// 格式化VB.NET函数头注释
function FormatFunctionRemark_VBDOTNET(str)
{
	// 函数头注释处的<summary>值变绿色
	str = str.replace(/(\'{3}\s{0,}&lt;summary&gt;.*?\n)([\s\S]*?)(\'{3}\s{0,}&lt;\/summary&gt;)/gi,
			function() {
				str = arguments[2].replace(/(\'{3})([\s\S]*?)(\n)/g,"$1<font color=\"#008000\">$2</font>$3");
				return(arguments[1]+str+arguments[3]); 
			});
	// <param>值变为绿色
	str = str.replace(/(\'{3}\s{0,}&lt;param([\s\S]*?)&gt;)([\s\S]*?)(&lt;\/param&gt;)/gi,"$1<font color=\"#008000\">$3</font>$4");
	// <returns><example><remarks><value>值变为绿色
	str = str.replace(/(\'{3}\s{0,}&lt;(returns|example|remarks|value)&gt;)([\s\S]*?)(&lt;\/\2&gt;)/gi,
		"$1<font color=\"#008000\">$3</font>$4");
	// 函数头注释处其它字符变为灰色
	str = str.replace(/(\'{3})([\s\S]*?)(<\/SPAN>|\n|$)/gi,"<font color=\"#808080\">$1$2</font>$3");
	return(str);
}

// 格式化VB.NET函数
function FormatBrace_VBDOTNET(str)
{
	// 替换函数头
	str = str.replace(/(.*?)\b(Public|Protected|Private|Function|Sub)\b(.*?)(\()/gi,
		function() {
				var s = GetHeader(arguments[1]+arguments[2],arguments[3]+arguments[4]+")","CodeFunction",false,false)
						+arguments[3]+arguments[4];
				return(s);
			});
	// 替换函数尾	
	str = str.replace(/(.*\b(End Function|End Sub)\b)/gi,
		"<IMG src=\"ExpandedSubBlockEnd.gif\" align=\"top\"/>$1</span>"); 
	
	return(str);
}

//替换收缩图片
function FormatImage(str)
{
    // 展开和收缩在同一行时,去掉ExpandedSubBlockEnd.gif
//	str = str.replace(/(<IMG src="ContractedSubBlock.gif.*?>)<IMG src="ExpandedSubBlockEnd.gif.*?>/gi,"$1");
	str = str.replace(/(<IMG src="Contracted(Sub)?Block.gif)([\s\S]*?)(\n)/gi,
		function() {
			var s = arguments[3].replace(/<IMG src="Expanded(Sub)?BlockEnd.gif.*?>/gi,"");
			return(arguments[1]+s+arguments[4]);
		});
	// 替换第一个收缩图片为ExpandedBlockStart.gif,并替换第一个收缩图片前的全部InBlock.gif图片为None.gif
	str = str.replace(/([\s\S]*?)(<IMG src="Expanded)(?:Sub)(BlockStart.gif)/i,
			function() {
				var s = arguments[1].replace(/(<IMG src=")(InBlock)(.gif".*?>)/gi,"$1None$3");
				s += arguments[2]+arguments[3];
				return (s);
			});
	str = str.replace(/(<IMG src="Contracted)(?:Sub)(Block.gif)/i,"$1$2");
	// 替换最后一个收缩图片为ExpandedBlockEnd.gif,并替换最后一个收缩图片后的全部InBlock.gif图片为None.gif
	str = str.replace(/([\s\S]*)(<IMG src=.*?Expanded)(?:Sub)(BlockEnd.gif)([\s\S]*?)$/i,
			function() {
				var s = arguments[1]+arguments[2]+arguments[3];
				s += arguments[4].replace(/(<IMG src=")(InBlock)(.gif".*?>)/gi,"$1None$3");
				return (s);
			});
			
	str = str.replace(/<IMG src="ExpandedSubBlockEnd.gif" align="top"><IMG src="ExpandedSubBlockStart.gif[\s\S]*?><IMG src="ContractedSubBlock.gif[\s\S]*?>/gi,"<IMG src=\"InBlock.gif\" align=\"top\">");
	return(str);
}

//替换字符串中关键字
function FormatKeyWords(str)
{
	// 字符串值中关键字不变色
	str = str.replace(/(&quot;.*?&quot;)/g,
			function() {
				return (ClearColorTag(arguments[1]));
			});
	return(str);
}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -