• js正则笔记


      1 //内容
      2 var innerhtml = $('.reading_box_m').html().replace(/ tag="?[一二三四五六七八九十]+"?/ig, "");
      3 var innerhtml = innerhtml.replace(/ id="?d+"?/ig, "");
      4 //初步匹配篇 章 节
      5 var regALl_Rge1 = new RegExp('<(div|p)\s+class="?(ue_codeTitle|ue_chapterTitle|ue_sectionTitle)"?>([^<]+)</\1>', 'ig');
      6 var titleLis = innerhtml.match(regALl_Rge1);
      7 
      8 
      9 innerhtml.replace(regALl_Rge1, function () {
     10 lip = lip + 1;
     11 //
     12 var format_1_children = $('<li><a href="#"></a></li>');
     13 //
     14 var format_2_children = $('<li><a href="#"></a></li>');
     15 //
     16 var format_3_children = $('<li><a href="#"></a></li>');
     17 var args = arguments;
     18 //
     19 if (args[2] == 'ue_codeTitle') {
     20 format_1_children.children('a').prepend('<input type="button" >').attr('href', '#' + lip).append(args[3]);
     21 format_1.append(format_1_children);
     22 //当前篇
     23 currF1 = format_1.children('li').last();
     24 f = f + 1;
     25 }
     26 //
     27 else if (args[2] == 'ue_chapterTitle') {
     28 if (f == 0 || f != lastF) {
     29 format_2_children.children('a').prepend('<input type="button" >').attr('href', '#' + lip).append(args[3]);
     30 //当前章
     31 currF2 = $("<ul id='general' class='manual_book' style='display: none;'></ul>");
     32 currF2.append(format_2_children);
     33 //如果没有篇
     34 if (!currF1) {
     35 format_1.append(format_1_children);
     36 //当前篇
     37 currF1 = format_1.children('li').last();
     38 currF1.children('a').after(currF2).remove();
     39 currF2.show();
     40 f = 1;
     41 }
     42 else {
     43 currF1.children('a').after(currF2);
     44 }
     45 }
     46 else {
     47 format_2_children.children('a').prepend('<input type="button" >').attr('href', '#' + lip).append(args[3]);
     48 currF1.children('ul').append(format_2_children);
     49 }
     50 f2 = f2 + 1;
     51 lastF = f;
     52 }
     53 //
     54 else if (args[2] == 'ue_sectionTitle') {
     55 format_3_children.children('a').prepend('<input type="button" >').attr('href', '#' + lip).append(args[3]);
     56 if (f2 == 0 || f2 != lastF2) {
     57 //当前节
     58 currF3 = $("<ul id='manual_1' class='list' style='display: none;' style='display: block;'></ul>");
     59 currF2.children('li').last().children('a').end().append(currF3);
     60 }
     61 currF3.append(format_3_children);
     62 lastF2 = f2;
     63 }
     64 }); 
     65 
     66 
     67 
     68  
     69 /*********收索关键字变色开始***********/
     70 function HightLight(searchList) {
     71 var arrStyle = [
     72 { style: "color:red;padding:0px 2px;" },
     73 { style: "color:orange;padding:0px 2px;" },
     74 { style: "color:yellow;padding:0px 2px;" },
     75 { style: "color:green;padding:0px 2px;" },
     76 { style: "color:aqua;padding:0px 2px;" },
     77 { style: "color:blue;padding:0px 2px;" },
     78 { style: "color:purple;padding:0px 2px;" }
     79 ];
     80 searchList = decodeURIComponent(searchList);
     81 if (!searchList) return;
     82 for (var j = 0; j < searchList.split(',').length ; j++) {
     83 var kyesVal = searchList.split(',')[j];
     84 $(".reading_box_m p").filter(function (i) {
     85 if ($(this).text().indexOf(kyesVal) != -1) {
     86 var r = RegExp(kyesVal, 'ig');
     87 $(this).html($(this).html().replace(r, '<span keys style=' + arrStyle[j % 7].style + ' >' + kyesVal + '</span>'));
     88 }
     89 });
     90 }
     91  
     92 }
     93 /*********收索关键字变色结束***********/
     94  
     95  
     96 //关键字搜索
     97 function Sercah() {
     98 var kyesVal = $.trim(document.getElementById('txtMenKey').value);
     99 //if (keys_test != "" && keys_test == kyesVal) { return; }//waitmsg("已找到对应的" + g_keys_count + "处关键字!", 1);相同关键字查询时返回
    100 $(".reading").children('reading_box_m p').css({ 'background': "#FFF" })
    101 $('span[keys]').removeAttr('style').removeAttr("id");
    102 g_keys = 0;
    103 var lip = 0;
    104 if (kyesVal != '' && kyesVal != '关键字查询') {
    105 $(".reading_box_m p").filter(function (i) {
    106 if ($(this).text().indexOf(kyesVal) != -1) {
    107 var r = RegExp(kyesVal, 'ig');
    108 $(this).html($(this).text().replace(r, function () {
    109 var arg = arguments;
    110 lip++;
    111 return '<span title=第' + lip + '处 id=keys' + lip + ' keys style="background:yellow; color:red">' + kyesVal + '</span>';
    112 }))
    113 }
    114 });
    115 keys_test = kyesVal; //关键字记录赋值
    116 g_keys_count = lip; //关键字次数
    117 if (arguments.length > 0 && arguments[0] == '0') {//有参数表示按钮点击没有查询到提示
    118 if (lip == 0)
    119 waitmsg("没有找到对应的关键字!", 4);
    120 else {
    121 waitmsg("已找到对应的" + g_keys_count + "处关键字!", 1);
    122 PositionKeys('down', 0);//有参数是跳转到第一个查询位置
    123 }
    124 }
    125 } else {
    126 if (arguments.length > 0 && arguments[0] == '0')//有参数表示按钮点击没有查询到提示
    127 $('#txtMenKey').val('关键字查询');
    128 keys_test = '';
    129 waitmsg("请输入查询关键字!", 4);
    130 };
    131 };
    132  
    133 //定位关键字
    134 function PositionKeys(t, c) {
    135  
    136  
    137 var countkey = parseInt(g_keys_count);
    138 if (countkey == 0) {
    139 waitmsg("没有找到对应的关键字!", 4);
    140 return;
    141 }
    142 if (t == "down") {
    143 g_keys = g_keys + 1;
    144 if (g_keys > countkey) {
    145 g_keys = 1;
    146 }
    147 }
    148 else if (t == "up") {
    149 g_keys = g_keys - 1;
    150 if (g_keys <= 0) {
    151 g_keys = countkey;
    152 }
    153 }
    154 $("span[id^='keys']").css("border", "none");
    155 $("#keys" + g_keys).css("border", "red 1px solid");
    156 var topVal = $('.reading_box').scrollTop() + parseInt($("#keys" + g_keys).offset().top);
    157 $('.reading_box').stop(true).animate({ scrollTop: (topVal - 30) }, 500);
    158 }; 
    159  
    160  
  • 相关阅读:
    Java实现HadoopHA集群的hdfs控制
    Hadoop-2.8.5的HA集群搭建
    Python实现bing必应壁纸下载
    使用Python3将Markdown(.md)文本转换成 html、pdf
    使用GitHub作Free图床
    JavaMail实践--实现邮件发送
    Python3实现图片转字符画
    Java编写的Java编辑器_JavaIDE
    Java实现简易版计算器
    Java实现Excel表格操作--API:jxl
  • 原文地址:https://www.cnblogs.com/sxmny/p/3471100.html
Copyright © 2020-2023  润新知