一,js 正则表达式

  test 判断制度串是否符合规定的正则

  (1)定义正则表达式匹配规则

          js 中定义正则表达式为rep=/\d+/,两个//之间为正则模式

  (2)rep.test("assdsda89sdasdas") ,返回true,一般test 方法为只要字符串中的包含正则模式即返回true

  (3)rep=/^\d+$/完全匹配正则模式

    exec 获取匹配的数据

  1, (1)rep=/\d+/;

    (2)str="wangshen_67_houyanfa_20"

    (3)rep.exec(str) 返回["67"]

  2,   js exec 分组匹配

text="JavaScript is more fun than Java or JavaBeans!"
var pattern = /\bJava(\w*)\b/;
pattern.exec(text) #返回 ["JavaScript", "Script"]

3,js exec 全局匹配

text="JavaScript is more fun than Java or JavaBeans!"
var pattern = /\bJava\w*\b/g;
pattern.exec(text)
# ["JavaScript"]
pattern.exec(text)
# ["Java"]
pattern.exec(text)
# ["JavaBeans"]
pattern.exec(text)
# null
pattern.exec(text) #加g表示全局匹配,匹配一个输出一个,当全部匹配完成时输出null 再匹配从头开始

4,js exec 全局加分组匹配

JavaScript is more fun than Java or JavaBeans!
var pattern = /\bJava(\w*)\b/g;
# ["JavaScript",'Script']
# ["Java", ""]
# ["JavaBeans", "Beans"]
# null #分组匹配会对匹配到的结果再进行一次匹配

5,其它匹配模式

  (1)/.../i 不区分大小写

  (2)/.../m 表示多行匹配,js 中默认支持多行匹配,也就是单独加g也可以完成多行匹配,但是在匹配模式中^$,匹配多行时需要m参数

例如

text="JavaScript is more fun than \n  Java or JavaBeans!"
var pattern = /\bJava(\w*)\b/g;
pattern.exec(text) #返回["JavaScript",'Script'] 也可以匹配成功,表示默认支持多行
text="JavaScript is more fun than \n Java or JavaBeans!"
var pattern = /^Java(\w*)/g; #匹配以Java开头的字符串,且后面为任意字符
pattern.exec(text) #返回["JavaScript",'Script']
pattern.exec(text) #返回null var pattern = /^Java(\w*)/gm;
pattern.exec(text) #返回["JavaScript",'Script']
pattern.exec(text) #返回["Java",""]

6,a标签绑定事件

<a onclick='return Func();'>asdf</a>
function Func(){
return false: #利用DOM绑定方式增加a标签事件
} <a>asdf</a>
$('a').click(function(){return false;}) #利用jquery方式绑定事件

7,form 表单提交事件

<form>
<input type='text' />
<input type='password' />
<input type='submit' />
</form> $(':submit').click(function(){
$(':text,:password').each(function(){
...
return false;
})
return false;
})

8,标签定义事件执行顺序

  像a input submit 标签一般默认都为自定义事件先执行,checkbox 默认事件先执行

9,css设置重要性

<style>
.no-radus{
border-radius:0 !important;
}
</style>

二,django

1,django 设置静态文件路径

  在setting.py中最下面添加添加以下代码 

STATIC_URL = '/static/'
STATICFILES_DIRS = { os.path.join(BASE_DIR,'static'), }

2,创建完django project 后的操作

(1),配置模板的路径

TEMPLATES = [
{
'BACKEND': 'django.template.backends.django.DjangoTemplates',
'DIRS': [os.path.join(BASE_DIR, 'templates')],
'APP_DIRS': True,
'OPTIONS': {
'context_processors': [
'django.template.context_processors.debug',
'django.template.context_processors.request',
'django.contrib.auth.context_processors.auth',
'django.contrib.messages.context_processors.messages',
],
},
},
]

(2),配置静态文件的路径

#在 setting.py 中添加
STATICFILES_DIRS = (
os.path.join(BASE_DIR, 'static'),
)
#在html中添加
<link rel="stylesheet" href="/static/commons.css" />

3,view.py获取用户提交的数据

if request.method == "post":

    user = request.POST.get(‘user',None)
pwd = request.POST.get('pwd',None) #获取用户提交的数据中 即使不存在相应的值也不会报错 user = request.POST['user']
pwd = request.POST['pwd'] #获取用户提交的数据。如果不存在就会报错

4,view.py中函数处理重定向到其它网址

from django.shortcuts import redirect    #导入模块

return redirect('http://www.baidu.com')   #在view函数中添加,重定向到其它网站

from django.shortcuts import render

return render(request,'login.html') #找到本地的模板,打开html文件

5,render 返回错误信息

  return render(request,'login.html',{'error_msg':error_msg})

6,django 处理html模板for 循环与取某一个值

{% for row in user_list %}
<tr>
<td>{{ row.username }}</td>
<td>{{ row.gender }}</td>
<td>{{ row.email}}</td>
</tr>
{ %endfor %} #部分html代码 def home(request):
return render(request,'home.html',{'user_list': USER_LIST}} #部分views.py代码

7,css input 框中提示字设置

<input type="text" name="username" placeholder="用户名" />

8,django 已get方式获取值,需要在url中增加值
     例如:

http://127.0.0.1:8009/home?nid=123&name=jack  #get方式请求

#views函数中
print(request.GET)
#返回
<QueryDict:{'name':[alex],'nid':['123']}>
print(request.GET.get('nid'))
#返回
123

Python 学习第十八天 js 正则及其它前端知识的更多相关文章

  1. [Python自学] day-18 (1) (JS正则、第三方组件)

    一.JS的正则表达式 JS正则提供了两个方法: test():用于判断字符串是否符合规定: exec():获取匹配的数据: 1.test() 定义一个正则表达式: reg = /\d+/; // 用于 ...

  2. python学习笔记十三 JS,Dom(进阶篇)

    JS介绍 JavaScript 是属于网络的脚本语言!JavaScript 被数百万计的网页用来改进设计.验证表单.检测浏览器.创建cookies,以及更多的应用:JavaScript 是因特网上最流 ...

  3. python学习第十八天 --文件操作

    这一章节主要讲解文件操作及其文件读取,缓存,文件指针. 文件操作 (1)文件打开:open(filepath,filemode) filepath:要打开文件的路径 filemode:文件打开的方式 ...

  4. python学习第十八天 --错误&异常处理

    这一章节主要讲解python的错误和异常处理 什么是错误和异常?及其区别? 错误: 1.语法错误:代码不符合解释器或者编译器语法. 2.逻辑错误:不完整或者不合法输入或者计算出现问题.   异常:执行 ...

  5. python学习(六)--正则的一些例子

    import re #正则表达式#compile函数,--将正则表达式转变为内部函数,提高执行效率strr = "python123456"pattern = "Pyth ...

  6. python学习三十八天常用内置函数分类汇总

    python给我们提供丰富的内置函数,不用去写函数体,直接调用就可以运行,很方便快速给我提供开发所需要的函数. 1,查内存地址 id() 变量的内存地址 id() 2,输入输出 input()  pr ...

  7. python学习第二十八天函数局部变量的用法

    函数局部变量是在函数里面的变量,只能在函数内部使用,如果函数没有找对应变量,函数将去函数外部找对应变量,局部变量优先级大于外部变量,详细说明一下 1,局部变量已经定义值 name='zhan san' ...

  8. python学习第十八天计算机字符编码

    人类语言和计算机语言二进制怎么沟通,最开始字符编码为ascii码对照表 包括数据和字母,没有汉字,中国自己搞了一套自己的编码 gb2312编码后来发展GBK编码,日本,韩国都,甚至台湾也搞自己的编码, ...

  9. Python学习笔记第二十二周(前端知识点补充)

    目录: 一.伪类 二.样式 1.字体 2.背景图片 3.margin和padding 4.列表属性 5.float 6.clear 7.position 8.text-decoration(a标签下划 ...

随机推荐

  1. C# 深入浅出 异步(八)

    C#异步调用学习链接:从C#5.0说起:再次总结C#异步调用方法发展史

  2. AngularJS2.0 教程系列(一)

    http://my.oschina.net/u/2275217/blog/482178

  3. 输出 Office 报表

    以 word 为例: 将 word 存为 Word2003 XML,其中苹果等部分即是 xml 如下: 服务器端通常输出 HTML,HTML 是文本,XML也是文本,可以简单的套用服务器端网页的思路. ...

  4. 关于JQ toggle 的注意事项

    1.9.1以后的版本,好像不支持 jq 的 toggle function的用法啦.

  5. 如何添加商*通新对话快捷链接?不用js代码

    我们在使用商务通一般都是在页面中嵌入一段js代码,如果您是js洁癖,是不是在想着如何直接用一张小图加上商*通新对话链接来代替呢?好,那就一起来研究一下吧. 首先,我们打开一个有商*通js弹窗的页面,比 ...

  6. [原创]CSS3打造动态3D气球

    周末在江边晨跑的时候发现很多 当时心血来潮就想,应该可以在网页中实现一下 这几天得闲就做了一下,效果如下 (尽量在最新版本的chrome或者firefox中查看) demo下载在文章最后 预览 --& ...

  7. 一次erlang 节点CPU严重波动排查

    新服务上线后观察到,CPU在10 ~ 70%间波动严重,但从每秒业务计数器看业务处理速度很平均. 接下来是排查步骤: 1. dstat -tam 大概每10s一个周期,网络流量开始变得很小,随后突然增 ...

  8. 关于layoutSubviews

    layoutSubviews 是什么? 设定subviews的尺寸和位置,如果要精确布局,可以在子类里重写此方法.不能直接调用此方法,如果想强制layout刷新,调用setNeedsLayout来代替 ...

  9. cocos2d-x宏定义

    1 ccp : The "ccp" prefix means: "CoCos2d Point" //查看: ../cocos2d-x-2.2/cocos2dx/ ...

  10. js获取系统时间时自动补齐日期带零

    最近在开发中发现有日期不规范的问题,正常规则应该是yy-mm-dd,而在输出时候却变成yy-mm-d,这是js的date()方法在作怪 解决思路是若在10号前,则自动给它补齐一个0,下面给出解决方法, ...