<!--
/*
'' ============================================================================================
'' 项目名称：风越项目范例ASPX单层框架
'' 项目版本：V1.0
'' 项目描述：
'' 文件名称：js/js_regex.js
'' 文件描述：[JavaScript] 正则表达式函数库
'' 公司名称：中极网盛
'' 开发人员：刘怒
'' 创建日期：2008-8-7 21:34:32
'' 修订日期：2009-03-10 09:09:55
'' 版权信息：Copyright (C) 2008

'' 项目升级时需读取以下生成工具的版权信息
'' 生成工具：风越代码生成器 [FireCode Creator]
'' 当前版本：通用版 V1.8
'' 官方网站：http://www.sino8848.com
'' ============================================================================================
*/

// 注意：传入模板变量(patternStr)中的\要转换为\\

// --------------------------------------
// 将传入的正则表达式pattern转换为原义字符串
function RegPatternToStr(strIn)
{
	var strOut = strIn.replace(/\\/gim, "\\\\");
	strOut = strOut.replace(/\^/gim, "\\^");
	strOut = strOut.replace(/\$/gim, "\\$");
	strOut = strOut.replace(/\*/gim, "\\*");
	strOut = strOut.replace(/\+/gim, "\\+");
	strOut = strOut.replace(/\|/gim, "\\|");
	strOut = strOut.replace(/\?/gim, "\\?");
	strOut = strOut.replace(/\./gim, "\\.");
	strOut = strOut.replace(/\[/gim, "\\[");
	strOut = strOut.replace(/\]/gim, "\\]");
	strOut = strOut.replace(/\(/gim, "\\(");
	strOut = strOut.replace(/\)/gim, "\\)");
	strOut = strOut.replace(/\{/gim, "\\{");
	strOut = strOut.replace(/\}/gim, "\\}");
	strOut = strOut.replace(/\-/gim, "\\-");
    return strOut;
}
// --------------------------------------

// --------------------------------------
// 正则表达式检测是否匹配：返回检测结果(true/false)
function RegExpCheck(patternStr, sourceStr)
{
    var regExp = new RegExp(patternStr, "gim");
    return regExp.test(sourceStr);
}
// --------------------------------------

// --------------------------------------
// 正则表达式替换
// 模板,源字符串,替换字符串。返回替换后的字符串
function RegExpReplace(patternStr, sourceStr, replaceStr)
{
    var regExp = new RegExp(patternStr, "gim");
    return sourceStr.replace(regExp, replaceStr);
}
// --------------------------------------

// --------------------------------------
// 正则表达式匹配结果：模板,源字符串,分组字符串（如：$1$2）。
// 返回与pattern或组匹配的字符串，如groupStr为""""则返回全部匹配
function RegExpMatch(patternStr, sourceStr, groupStr)
{
    var strValue = "";
    var regExp = new RegExp(patternStr, "gim");
    var arrValues = regExp.exec(sourceStr);

    if (arrValues != null)
    {
        // 返回全部匹配或是返回其中指定的组
        if (groupStr == "")
        {
            strValue = arrValues[0];
        }
        else
        {
            var i = 0;
            for (i = 0; i < arrValues.length; i++)
            {
                if ((groupStr + "$").indexOf("$" + i.toString() + "$") >= 0)
                {
                    strValue += arrValues[i];
                }
            }
        }
    }
    return strValue;
}
// --------------------------------------
-->