2017.11.22 常用的正则表达式、全选、反选和appendTo方法、贾樟柯、Visio流程图、JS获取URL中参数值

第一组:杨昊 常用的正则表达式

常用的正则表达式,这回差不多齐活了:

  • 验证数字:^[0-9]*$

  • 验证n位的数字:^\d{n}$

  • 验证至少n位数字:^\d{n,}$

  • 验证m-n位的数字:^\d{m,n}$

  • 验证零和非零开头的数字:^(0|[1-9][0-9]*)$

  • 验证有两位小数的正实数:^[0-9]+(.[0-9]{2})?$

  • 验证有1-3位小数的正实数:^[0-9]+(.[0-9]{1,3})?$

  • 验证非零的正整数:^+?[1-9][0-9]*$

  • 验证非零的负整数:^-[1-9][0-9]*$

  • 验证非负整数(正整数 + 0) ^\d+$

  • 验证非正整数(负整数 + 0) ^((-\d+)|(0+))$

  • 验证长度为3的字符:^.{3}$

  • 验证由26个英文字母组成的字符串:^[A-Za-z]+$

  • 验证由26个大写英文字母组成的字符串:^[A-Z]+$

  • 验证由26个小写英文字母组成的字符串:^[a-z]+$

  • 验证由数字和26个英文字母组成的字符串:^[A-Za-z0-9]+$

  • 验证由数字、26个英文字母或者下划线组成的字符串:^\w+$

  • 验证用户密码:^[a-zA-Z]\w{5,17}$ 正确格式为:以字母开头,长度在6-18之间,只能包含字符、数字和下划线。

  • 验证是否含有 ^%&',;=?\" 等字符:[^%&',;=?\x22]+

  • 验证汉字:^[\u4e00-\u9fa5],{0,}v验证Email地址:^\w+[-+.]\w+)*@\w+([-.]\w+)*\.\w+([-.]\w+)*

  • 验证InternetURL:^http://([\w-]+.)+[\w-]+(/[\w-./?%&=]*)?;^[a-zA-z]+://(w+(-w+)*)(.(w+(-w+)*))*(?S*)?

  • 验证电话号码:^(\d3,4|\d{3,4}-)?\d{7,8}$:--正确格式为:XXXX-XXXXXXX,XXXX-XXXXXXXX,XXX-XXXXXXX,XXX-XXXXXXXX,XXXXXXX,XXXXXXXX。

  • 验证身份证号(15位或18位数字):^\d{15}|\d{}18$

  • 验证一年的12个月:^(0?[1-9]|1[0-2])$ 正确格式为:“01”-“09”和“1”“12”

  • 验证一个月的31天:^((0?[1-9])|((1|2)[0-9])|30|31)$ 正确格式为:01、09和1、31。

  • 整数:^-?\d+$

  • 非负浮点数(正浮点数 + 0):^\d+(.\d+)?$

  • 正浮点数 ^(([0-9]+.[0-9][1-9][0-9])|([0-9][1-9][0-9].[0-9]+)|([0-9][1-9][0-9]))$

  • 非正浮点数(负浮点数 + 0) ^((-\d+(.\d+)?)|(0+(.0+)?))$

  • 负浮点数 ^(-(([0-9]+.[0-9][1-9][0-9])|([0-9][1-9][0-9].[0-9]+)|([0-9][1-9][0-9])))$

  • 浮点数 ^(-?\d+)(.\d+)?


第二组:徐晋 全选、反选和appendTo方法

1. 全选、反选
<form>
        你爱好的运动是?<br/>
        <input type="checkbox" name="items" value="足球" />足球
        <input type="checkbox" name="items" value="篮球" />篮球
        <input type="checkbox" name="items" value="羽毛球" />羽毛球
        <input type="checkbox" name="items" value="乒乓球"/>乒乓球<br/>
        <input type="button" id="CheckAll" value="全  选" />
        <input type="button" id="CheckNo" value="全不选" />
        <input type="button" id="CheckRev" value="反  选"/>
</form>
<script>
        $(function () {
            $("#CheckAll").click(function () {
                $("[name=items]:checkbox").attr("checked", true);
            });

            $("#CheckNo").click(function () {
                $("[name=items]:checkbox").attr("checked", false);
            });

            $("#CheckRev").click(function () {
                $("[name=items]:checkbox").each(function () {
                    this.checked = !this.checked;
                });
            });
        })
</script>

注意:在之前的jquery的版本中,都是使用attr()来访问对象的属性,但在某些时候,比如访问input的disabled属性的时候,会有些问题。在有些浏览器中,只要写了disabled属性就可以了,有些则要写:disabled="disabled"。所以,从1.6版开始,jquery提供新的方法prop()来获取这些属性。使用prop()的时候,返回值是标准属性:true/false。

按照官方的说明,如果是设置disabled和checked这些属性,应使用prop()方法,而不是使用attr()方法。

2. appendTo方法

想要实现的功能:将左边选中的option删除并加入到右边中


image.png
<div class="centent">
    <select multiple id="select1" style="width:100px;height:160px">
        <option value="1">选项1</option>
        <option value="2">选项2</option>
        <option value="3">选项3</option>
    </select>
    <div>
        <span id="add">选中添加到右边>></span><br/>
        <span id="add_all">全部添加到右边>></span>
    </div>
</div>
<div class="=centent">
    <select multiple id="select2" style="width:100px;height:160px"></select>
    <div>
            <span id="remove"><<选中删除到左边</span><br />
            <span id="remove_all"><<全部删除到左边</span>
    </div>
</div>

使用appendTo方法可以轻松实现从一边删除并添加到另一边

$("#add").click(function () {
    var $option = $("#select1 option:selected");
    $option.appendTo($("#select2"));
})
image.png

第三组: 贾樟柯和他的电影

image.png

我最喜欢的第六代导演之一。

贾樟柯的好,在于他对于小人物的关怀,以及对于社会变迁中普通人的关注。他的影片中体现出对时代的思考在中国导演中并不多见。用一句很冠冕堂皇的话说,他对于这片土地有很深的热爱。第六代导演中,目前仍然保持稳定高产且质量出色的只剩他和娄烨了。

他说:“不能因为整个国家在跑步前进就忽略了那些被撞倒的人。”所以他的电影很多都是记录小人物的。

基本在每隔几个月他的影片都会获得一个国际大奖,但是在国内,很少能够得到上映,即使上映,票房也都很惨淡,不过豆瓣评分都还不错。

推荐几部他的影片。

不多说,下面放链接:
《小武》链接: https://pan.baidu.com/s/1c1IcPWk 密码: pvbt
《三峡好人》链接: https://pan.baidu.com/s/1jIEdeKY 密码: d5hf
《天注定》链接: https://pan.baidu.com/s/1gfOsAGF 密码: twqs
《山河故人》链接: https://pan.baidu.com/s/1kV47Itx 密码: 7wa5
《站台》链接: https://pan.baidu.com/s/1o8bvqLs 密码: 52pb


第四组: 傅云 Visio流程图快速添加箭头的方法

最简单的流程图仅需要连接线以及实体框等工具。而不同的连接线操作选取较为复杂,分享流程图绘制过程中简便的箭头添加方法。

  1. 采用连接线以及指针工具绘制流程图


    image.png
image.png
  1. 选择流程图基本形状


    image.png
  2. 右键选择连接线 添加箭头


    image.png

第五组:周倩宇 JS获取URL中参数值(QueryString)的4种方法分享

方法一:正则法

代码如下:

function getQueryString(name) {
    var reg = new RegExp('(^|&)' + name + '=([^&]*)(&|$)', 'i');
    var r = window.location.search.substr(1).match(reg);
    if (r != null) {
        return unescape(r[2]);
    }
    return null;
}

// 这样调用:
alert(GetQueryString("参数名1"));
alert(GetQueryString("参数名2"));
alert(GetQueryString("参数名3"));
方法二:split拆分法

代码如下:

function GetRequest() {
    var url = location.search; //获取url中"?"符后的字串
    var theRequest = new Object();
    if (url.indexOf("?") != -1) {
        var str = url.substr(1);
        strs = str.split("&");
        for(var i = 0; i < strs.length; i ++) {
            theRequest[strs[i].split("=")[0]] = unescape(strs[i].split("=")[1]);
        }
    }
    return theRequest;
}

var Request = new Object();
Request = GetRequest();
// var 参数1,参数2,参数3,参数N;
// 参数1 = Request['参数1'];
// 参数2 = Request['参数2'];
// 参数3 = Request['参数3'];
// 参数N = Request['参数N'];
方法三:又见正则

通过JS获取url参数,这个经常用到。比如说一个url:http://wwww.jb51.net/?q=js,我们想得到参数q的值,那可以通过以下函数调用即可。

代码如下:

function GetQueryString(name) {  
    var reg = new RegExp("(^|&)" + name + "=([^&]*)(&|$)", "i");  
    var r = window.location.search.substr(1).match(reg);  
//获取url中"?"符后的字符串并正则匹配
    var context = "";  
    if (r != null)  
         context = r[2];  
    reg = null;  
    r = null;  
    return context == null || context == "" || context == "undefined" ? "" : context;  
}
alert(GetQueryString("q")); 
方法四:单个参数的获取方法
function GetRequest() {
   var url = location.search; //获取url中"?"符后的字串
   if (url.indexOf("?") != -1) {    //判断是否有参数
      var str = url.substr(1); //从第一个字符开始 因为第0个是?号,获取所有除问号的所有符串
      strs = str.split("=");   //用等号进行分隔 (因为知道只有一个参数 所以直接用等号进分隔,如果有多个参数,要用&号分隔,再用等号进行分隔)
      alert(strs[1]);          //直接弹出第一个参数 (如果有多个参数 还要进行循环的)
   }
}
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 199,711评论 5 468
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 83,932评论 2 376
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 146,770评论 0 330
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 53,799评论 1 271
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 62,697评论 5 359
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 48,069评论 1 276
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 37,535评论 3 390
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 36,200评论 0 254
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 40,353评论 1 294
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 35,290评论 2 317
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 37,331评论 1 329
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 33,020评论 3 315
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 38,610评论 3 303
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 29,694评论 0 19
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 30,927评论 1 255
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 42,330评论 2 346
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 41,904评论 2 341

推荐阅读更多精彩内容