javascript 正则表达式(js正则怎么包含正斜杠)
javascript 正则表达式,js正则怎么包含正斜杠?
使用转义字符\即可。如var reg=/\//;匹配一个正斜杠
出现在正则中有特别含义的字符都需要\来转义,如:\ . * ^ & [ ] { } ? 等
注意的是如果在[]字符集合里,很多字符都不需要转义
参考 :http://deerchao.net/tutorials/regex/regex-1.htm
正则表达式属于js吗?
答案是不属于。
因为正则表达式(regular expression)描述了一种字符串匹配的模式(pattern),可以用来检查一个串是否含有某种子串、将匹配的子串替换或者从某个串中取出符合某个条件的子串等。
构造正则表达式的方法和创建数学表达式的方法一样。也就是用多种元字符与运算符可以将小的表达式结合在一起来创建更大的表达式,可以运用在js里面,也可以运用在各种后端语言中。
不到40行的JavaScript代码?
本所一个程序员GG写的,拿走不谢!
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title></title>
</head>
<body>
<div id="content"></div>
<script type="text/tpl" id="template">
<p>name: {{this.name}}</p>
<p>age: {{this.profile.age}}</p>
{{if (this.sex) {}}
<p>sex: {{this.sex}}</p>
{{}}}
<ul>
{{for(var i in this.skills){}}
<li>{{this.skills[i]}}</li>
{{}}}
</ul>
</script>
<script type="text/javascript">
var mtpl = function(tpl, data) {
var re = /{{(.+?)}}/g,
cursor = 0
reExp = /(^( )?(var|if|for|else|switch|case|break|{|}|;))(.*)?/g,
code = 'var r=[];\n';
// 解析html
function parsehtml(line) {
// 单双引号转义,换行符替换为空格,去掉前后的空格
line = line.replace(/('|")/g, '\\$1').replace(/\n/g, ' ').replace(/(^\s+)|(\s+$)/g,"");
code +='r.push("' + line + '");\n';
}
// 解析js代码
function parsejs(line) {
// 去掉前后的空格
line = line.replace(/(^\s+)|(\s+$)/g,"");
code += line.match(reExp)? line + '\n' : 'r.push(' + line + ');\n';
}
while((match = re.exec(tpl))!== null) {
// 开始标签 {{ 前的内容和结束标签 }} 后的内容
parsehtml(tpl.slice(cursor, match.index))
// 开始标签 {{ 和 结束标签 }} 之间的内容
parsejs(match[1])
// 每一次匹配完成移动指针
cursor = match.index + match[0].length;
}
// 最后一次匹配完的内容
parsehtml(tpl.substr(cursor, tpl.length - cursor));
code += 'return r.join("");';
return new Function(code.replace(/[\r\t\n]/g, '')).apply(data);
}
var tpl = document.getElementById("template").innerHTML.toString();
document.getElementById("content").innerHTML = mtpl(tpl,{
name: "zhaomenghuan",
profile: {
age: 22
},
sex: 'man',
skills: ['html5','javascript','android']
});
</script>
</body>
</html>
python爬虫有多少种方式?
这里介绍一种简单的方式—BeautifulSoup,利用BeautifulSoup将爬虫获取到的html页面转化为树形结构,然后再根据需要提取标签的内容及属性,不需要正则表达式,下面我简单介绍一下BeautifulSoup安装和使用,实验环境win10+python3.6+pycharm5.0,主要内容如下:
1.安装bs4,这里直接在cmd窗口输入命令“pip install bs4”就行,如下,很快就能安装完毕:
2.安装成功后,我们就可以进行测试了,为了更好地说明问题,这里假设爬取的数据如下,内容比较简单:
对应的网页源码结构如下:
根据网页结构,解析代码如下,这里我是本地打开html文件,爬虫的话,直接使用requests请求对应的页面(requests.get(url)),解析的方式是一样的:
程序运行截图如下,已经成功获取到数据:
至此,我们就完成了利用BeautifulSoup来解析网页内容,整个过程不需要正则表达式。总的来说,这种方式很简单,对于常见的简单的页面来说,完全够用了(不过,正则表达式的使用范围比较广,建议还是认真学习一下),网上也有相关教程和资料,感兴趣的可以搜一下,希望以上分享的内容能对你有所帮助吧。
js用正则表达式把数字格式化成XXXX?
'xxxxx'.match(/\d{x, y}/g) 如 '111,1111,11111'.match(/\d{4,10}/g) => ['1111', '11111']