Django视图(其实是正则表达式)

Django2.0使用的path是不匹配正则表达式的,要匹配正则表达式要用re_path

from django.urls import path,re_path#其中path是不匹配,而re_path匹配

下面,看看正则表达式....

#简单的匹配
'/d'匹配0-9数字
'/w'匹配字母A-Z
'.'可以匹配任意字符
*表示任意字符,+表示至少一个字符,?表示一个或0个字符.{3}代表3个与前面字符代表的意思一致的匹配.{n,m}表示n-m个数字与其前面的匹配
'/s'表示空格
#比较复杂的匹配
[0-9a-zA-Z\_]可以匹配一个数字.字母或下划线
[0-9a-zA-Z\_]+至少包括一个字母数字,或者下划线.
[a-zA-Z\_][0-9a-zA-Z\_]*可以匹配由字母或下划线开头,后面同上的
^表示行的开头,^\d表示必须以数字开头
$表示行的结束,\d$表示必须以数字结尾

#代码
import re
P=re.compile('正则')
P.match(str)

re.match('',str)

<dd>.*?board-index.*?>(\d+)</i>.*?<a.*?>(.*?)</a>.*?"star">(.*?)</p>.*?releasetime">(.*?)</p>.*?score'>.*/integer(.*?)</i>.*?fraction">(.*?)</i>.*?</dd>

<dd>.*?board-index.*?>(\d+)</i>.*?data-src="(.*?)".*?name"><a'
                     + '.*?>(.*?)</a>.*?star">(.*?)</p>.*?releasetime">(.*?)</p>'
                     + '.*?integer">(.*?)</i>.*?fraction">(.*?)</i>.*?</dd>

<dd>.*?board-index.*?>(\d+)</i>.*?<a.*?>(.*?)</a>.*?star">(.*?)</p>.*?releasetime">(.*?)</p>.*?integer">(.*?)</i>.*?fraction">(.*?)</i>.*?</dd>

http://tool.oschina.net/regex/正则表达式测试网址

猜你喜欢

转载自blog.csdn.net/qq_37312720/article/details/82796786
今日推荐