好湿?好紧?好多水好爽自慰,久久久噜久噜久久综合,成人做爰A片免费看黄冈,机机对机机30分钟无遮挡

主頁 > 知識庫 > asp.net(文章截取前幾行作為列表摘要)無損返回HTML代碼

asp.net(文章截取前幾行作為列表摘要)無損返回HTML代碼

熱門標簽:使用智能電話機器人違法嗎 淘寶地圖標注如何做 太原外呼電銷機器人費用 朝陽市地圖標注 東莞語音電銷機器人排名 外呼系統用員工身份證 保山電話外呼管理系統怎么用 電話機器人廣告話術 蘇州銷售外呼系統預算

復制代碼 代碼如下:

BR>        /* STRONG>時間很久遠了,有碼友要,我抄了下來,記得使用的時候還是有部分例外情況要處理,大部分是ok的。/STRONG>
        * 函數: 
        * 說明:無損返回HTML代碼
        *      
        * 作者:卡斯Kas(QQ:10590916)
        * 修改:2010-12-13、
        */

        public static string LeftH(string str, int l)
        {
            //為了防止錯誤
            string odstr = str;
            bool isHtml = false;//判斷截取開頭是否是字符串
            int maxLen = str.Length;
            int n = 0, i = 0, b = 0, e = 0;
            string c, c2 = "", Start = "", EndLabel = "", AllLabel = "";
            if (l >= str.Length) return str;//截取字段大于字符長度

            bool isErr = false;
            try
            {
            while (n l i maxLen)
            {
                //1
                i++;
                c = str.Substring(i - 1, 1);

                string end2str = "";
                try
                {
                    end2str = str.Substring(i - 1, 2);
                }
                catch
                {
                    end2str = "";
                }
                if (c == "" end2str != "/")
                {
                    isHtml = true;
                    b = i;//記錄一個位置
                    //5     解決非成對標簽

                    string end2tag = "";
                    try
                    {
                        end2tag = str.Substring(i, 2);
                    }
                    catch
                    {
                        end2tag = "";
                    }

                    if (end2tag == "br")
                    {
                        isHtml = false;
                    }
                    if (str.Substring(i, 1).ToLower() == "%")
                    {
                        isHtml = false;
                    }
                    if (str.Substring(i, 1).ToLower() == "?")
                    {
                        isHtml = false;
                    }
                    else if (end2tag == "hr")
                    {
                        isHtml = false;
                    }
                    //5end
                }
                //1end

                //2
                if (c == "" end2str == "/")
                {
                    c2 = str.Substring(i - 1, str.Substring(i - 1).IndexOf(">") + 1);
                    AllLabel = AllLabel.Substring(c2.Length);
                }
                //2end

                Start = Start + c;//記錄當前字符及其前面字符

                if (!isHtml)
                {
                    //6     較為準確的計數
                    try
                    {
                        if (str.Substring(i, 2).ToLower() == "br")
                        {
                        }
                        else if (str.Substring(i, 2).ToLower() == "hr")
                        {
                        }
                        else
                        {
                            n++;
                        }
                    }
                    catch
                    {
                        //如果出錯,則返回純文本(@"[^>]+>|/[^>]+>");
                        //odstr = Regex.Replace(odstr, @"[^>]+>|/[^>]+>", "", RegexOptions.IgnoreCase);
                        odstr = odstr.Replace("", "").Replace(">", ">");
                        if (l > odstr.Length) l = odstr.Length;
                        return odstr.Substring(0, l);
                    }
                    //6end
                }
                else
                {
                    if (c == ">")//如果循環到>時,要處理的成對標簽中間部分
                    {
                        if (isHtml)
                        {
                            EndLabel = str.Substring(b, i - b);//獲取到>之間的代碼
                            e = EndLabel.IndexOf(" ");//標簽屬性都有空格,以空格為分割,獲取標簽名
                            if (e > 0)
                            {
                                EndLabel = "/" + EndLabel.Substring(0, e) + ">";
                            }
                            else
                            {
                                EndLabel = "/" + EndLabel;
                            }
                            AllLabel = EndLabel + AllLabel;//記錄當前結束標簽,及所有有關結束標簽
                        }
                        isHtml = false;//重置屬性,從新開始
                    }
                }
                //4     當結束時,發現有未閉合的標簽,則重新來一次
                if (n + 1 >= l)
                {
                    if (InStrN(Start, "") != InStrN(Start, ">"))
                    {
                        n--;
                    }
                }
                //4end
            }//end while

            }
            catch
            {
                isErr = true;
            }

            string newReString = Start + AllLabel + "...";

            //最后再次驗證
            Regex Rg = new Regex(".[^>/]+>", RegexOptions.Compiled);
            Regex Rg2 = new Regex(@"\s*/[a-z]\s*>", RegexOptions.Compiled);

            if (inStrLen(newReString, "") != inStrLen(newReString, ">"))
            {
                isErr = true;
            }
            else if (inStrLen(newReString.Replace(""", "\""), "\"") % 2 == 1)
            {
                isErr = true;
            }
            else if (Rg.Matches(newReString).Count != Rg2.Matches(newReString).Count)
            {
                isErr = true;
            }
            if (isErr)
            {
                odstr = odstr.Replace("", "").Replace(">", ">").Replace("\"", """).Replace("'", "'");
                if (l > odstr.Length)
                { newReString = odstr; }
                else
                {
                    try
                    {
                        newReString = odstr.Substring(0, l) + "...";
                    }
                    catch
                    {
                        newReString = odstr;
                    }
                }
            }

            return newReString;//返回
        }

您可能感興趣的文章:
  • 適用與firefox ASP.NET無刷新二級聯動下拉列表
  • asp.net Ext grid 顯示列表
  • asp.net 自制的單選、多選列表實現代碼
  • asp.net 下拉列表無級數據綁定實現代碼
  • asp.net 新聞列表樣式代碼
  • ASP.NET對無序列表批量操作的三種方法小結
  • ASP.NET系統關鍵字及保留字列表整理
  • asp.net TreeView與XML三步生成列表樹
  • ASP.NET批量操作基于原生html標簽的無序列表的三種方法
  • asp.net新聞列表生成靜態頁之批量和單頁生成
  • ASP.NET MVC5網站開發概述(一)
  • ASP.NET MVC5網站開發項目框架(二)
  • ASP.NET MVC5 網站開發框架模型、數據存儲、業務邏輯(三)
  • ASP.NET MVC5網站開發用戶注冊(四)
  • ASP.NET MVC5網站開發用戶登錄、注銷(五)
  • ASP.NET MVC5網站開發用戶修改資料和密碼(六)
  • ASP.NET MVC5網站開發文章管理架構(七)
  • ASP.NET MVC5網站開發添加文章(八)
  • ASP.NET MVC5網站開發顯示文章列表(九)

標簽:克拉瑪依 呼倫貝爾 運城 綏化 洛陽 西藏 潛江 阿里

巨人網絡通訊聲明:本文標題《asp.net(文章截取前幾行作為列表摘要)無損返回HTML代碼》,本文關鍵詞  asp.net,文章,截取,前,幾行,;如發現本文內容存在版權問題,煩請提供相關信息告之我們,我們將及時溝通與處理。本站內容系統采集于網絡,涉及言論、版權與本站無關。
  • 相關文章
  • 下面列出與本文章《asp.net(文章截取前幾行作為列表摘要)無損返回HTML代碼》相關的同類信息!
  • 本頁收集關于asp.net(文章截取前幾行作為列表摘要)無損返回HTML代碼的相關信息資訊供網民參考!
  • 推薦文章
    主站蜘蛛池模板: 国产宾馆实践打屁股91| JJIZZ女人老师护士水多视频| 99热黄| 中文字幕另类日韩欧美亚洲嫩草 | 日韩美女一区| 18chinese摸醉酒直男| 凹凸精品视频一区二区三区| 国精产品一线二线三线影院| 国产偷窥在线观看| 美女gif趴跪式动态图27bao| 超清日本写真lcdv在线观看| 亚洲日韩一区| acg里番本子库同人志| 男同志与动人物zozotv| 女人把私人部位扒开视频在线看| 钟丽缇色戒hd未删减版| 我和黑大佬的365天第一部| 秋霞午女人弄到高潮A片| 中国农村女人一级毛片| 性欧美孕交| 日韩黄漫| 动漫男女扒开双腿猛进入免费视频| 国产熟女高潮精品视频AV| 18分钟处破好疼哭视频在线| 齐天大圣孙悟空2002张卫健版| 操操影院| 久久亚洲精品国产精品黑人| 国产?无码?又爽又刺激网站| 国产亚洲精品久久久久久51网暴| 程仪把脸埋进秀婷两腿| 男男强制爱(h)| 乱亲伦至怀孕的漫画全彩| 国产91精品秘?入口福利| 啊轻点灬大ji巴太粗太长啊| 无遮挡很爽很污很黄很色的网站| 末世辣文从头肉到尾np| 宝贝我要添你下面的水密| 亚洲天堂区| 蹂躏着她一对雪白的玉峰| 大尺度床震捏胸呻吟视频| 福利视频在线导航|