当前位置:首页 > 黑客教程 > 正文内容

js正则表达xss(js正则表达式匹配数字和字母)

hacker2年前 (2022-06-01)黑客教程77

本文导读目录:

求一 *** 正则表达试

html

head

title

/title

/head

body

script type="text/javascript"

//只能输入数字5、3、0.5、0这几个数字,如果输入是4,就不符合要求

window.onload=function (){

var oInput=document.getElementById("i_num");

oInput.onblur=function (){

if(oInput.value.match(/^(5|3|0.5|0)$/)){

alert("1");

}else{

alert("0");

/script

input type="text" id="i_num" /

/body

不知道这样能否得到你想答案。。。。

*** 正则表达式中有哪些特殊字符,这些特殊字

这些符号有:^ $ . * + - ? = ! : | \ / ( ) [ ] { }

1.“[ ]”表示字符类: 即括号里是个字符集:如/[abc]/,表示和含有a,b,c任何一个字母的字符串都匹配。

注:特殊字符类:

\s表示空格符、制表符、Unicode空白符。\S表示非空格空白符。 (也可自定义Unicode字符类:

如:/[\u4E00-\u9FA5]/表示只匹配中文字符。)

\w 任何单字字符,相当于[a-zA-X0-9_];\W与\w相反。

\d 任何数字,相当于[0-9];\D与 \d相反。

\b在字符类中使用表示退格符,[\b]则表示退格直接量;\b可以用来指定匹配位置,即匹配到达单词边界,称为锚;

如:查找一个句子里的单词 java , 可以使用/\bjava\b/;\B与\b相反。

2.“-"表示连字符,如[a-z];

3."."表示除换行符;表示匹配除“\r\n”之外的任意单个字符。若要匹配包括“\r\n”在内的任何字符,请使用像“[\w\W|\d\D|\s\S|]”的模式。

4."^"具有两重含义:开始标记和非,如:/^a/表示以a开始的字符;当在[]中时:/[^a]/表示非a的所有字符。

5."$"表示字符结尾。如:/^abc$/表示以c结束的字符。

6.”{}"表示重复上一项。如/\d{2,4}/表示数字出现至少2次,最多4次。如/3{2,4}/匹配33...;333....;3333.....;不匹配3和4个3相连以上的了。它的三种格式如下{n,m}表示至少3次,最多m次;{n,}至少n次;{n}恰好n次。

7."?"表示{0,1}。

8."+"表示{1,}。

9."*"表示{0,}。

注:非贪婪的重复(如??,+?,*?,{1,5}?只匹配之一个。)

10."|"表示分割,即或的含义。如:/ab|cd|ef/匹配含有ab或cd或ef的字符串。

11."()"包含三重用途:一是定义子表达式。二是在完整的模式中定义子模式。三是子表达式的引用。

子模式的定义可以从目标串中抽取和括号中的子模式相匹配的部分。

子模式的表达式的引用是指:可识别子模式的编号,提取它。如/(abc)\sis\s(string\w*)/;里面含有两个字表达式:可通过

\1指(abc);\2指(string\w*); 应用如:/['"][^'"]*['"]/不能取前后同样的引号,可以这样写:/[('")[^'"]*\1]/,可起到约束作用。

注:若想()里的不想被记忆,可采用(?:.....),将不会对其编号。

还有(?=p),(?!p)如下:

如/(javascript)?(?=\:)/ 表示匹配javascript:,但不包含:;它不匹配javascript,因为他有个条件就是后要接:;

(?!p)反前向声明,要求接下来的字符不与模式p匹配,与(?=p)相反。

js中用正则表达式 过滤特殊字符 校验所有输入域是否含有特殊符号

代码如下:

function stripscript(s)

var

pattern = new

RegExp("[`~!@#$^*()=|{}':;',\\[\\]./?~!@#¥……*()——|{}【】‘;:”“'。,、?]")

var rs = "";

for (var i = 0; i s.length; i++) {

rs =

rs+s.substr(i, 1).replace(pattern, '');

return rs;

javascript正则表达式怎么多行匹配

i 忽略大小写

g 查找找到所有的匹配,而不是在找到之一个之后就停止

m 多行模式,^匹配开头,$匹配结尾

varp=/"([^"]*[\n]*[^"]*)*"/gi;

vararr=v.match(varp);

html

head

script type="text/javascript"

//正则替换链接,链接有换行

function t1(){

var con = document.getElementsByName('content')[0].value;//内容里有a href=""...../a,但是有换行

var reg = /a[\s]+[\d\D]*\/a/g;//采用[\d\D]或[\w\W]或[\s\S]来解决不能换行问题

alert(con.replace(reg,'----'));

//正则把每一行的结尾数字,换成#号---多行模式,添加/m(每行当作结尾)和/g(全局匹配)模式增强符

function t2(){

var con = document.getElementsByName('content')[0].value;//写几行文字,每行以数字结尾

var reg = /\d+$/gm;

alert(con.replace(reg,'#'));

/script

/head

body

textarea rows="5" cols="30" name="content"/textareabr /

button onclick="t1();"正则替换链接(需要考虑换行情况)/buttonbr /

button onclick="t2();"正则多行替换/buttonbr /

/body

/html

javascript正则表达式,要求可以是中文 ,英文,数字,特殊符号,这个怎么写啊?

你可以试试这个正则:/^[\u4e00-\u9fa5\w\d@\.\-_]{3,10}$/i

支持中文:\u4e00-\u9fa5

支持英文:\w,如果强制大小写,可以换成a-z或A-Z

支持数组:\d

支持特殊字符:@.-_,如果没有满足需要可以增删

忽略大小写:/i

用正则表达式不就可以让用户名不能包含一些字符了吗,为什么还要转义

你只是对用户名进行分析而已,就用户名而已确实是不需要的。

转义最重要的是防止xss攻击和sql注入。

我先说xss,xss是指你本身没有一段js,但是在用户输入的时候给你加了css,如果你没转义,那么,这一段就变成js执行了,这就是xss。例子:

假设用户发布一片文章,,文章中夹带了这么一段scriptalert(document.cookie)/script;那么,在文章展示页,执行了这么一段的话就把cookie打印出来了。假设你cookie当中有用户名,那么用户就获取到了用户名,可能你觉得没什么,用户名不是什么敏感数据,但是,你数据中总有敏感的数据在里面可能被挖掘出来。

好,下一步:假设用户在console执行了这么一段js。document.cookie="username=sss' or 1 +’",这是一个注入的sql,可能包含获取你的数据库信息。

那么你在执行数据库查询的是时候,

就有可能变成下面这个语句

select * from users where username =‘sss’ or 1 +‘‘ 。

你觉得这个执行的结果会是怎么样。这是你想要的结果么。这样有可能就获取到其他人的资料了。

这样就造成了sql注入

js 正则表达式提取某一段字符

var str = "BEGIN CONST a,b=10,c END IF a10  (a+c20 || bc) THEN RETURN true END ELSE RETURN false END END END";

str=str.replace(/\s/g,"");//取掉空格

str=str.match(/IF(\S*)THEN/)[1];//正则取出IF和THEN之间的字符串

str=str.split("");//按照分组

var str_end=str[0].split(''); //按照分组

alert(str_end);//最终结果为str_end[0]=a  str_end[1]=10 ;

扫描二维码推送至手机访问。

版权声明:本文由黑客24小时在线接单网站发布,如需转载请注明出处。

本文链接:https://www.cn-sl.com/112482.html

分享给朋友:

“js正则表达xss(js正则表达式匹配数字和字母)” 的相关文章

注册咨询 - 咨询工程师每年考试时间

投资,每一年持续 学育测验 有截至空儿。投资, 二0 一 五年征询工程师测验 空儿预计注册是 四,执业资历 轨制 久止划定 〉战〈注册, 二00 一年 一 二月。  一 二日征询,注册周期:周期是三年,正在经济扶植 外进行工程、 二0 一 八年征询工程师测验 :一、齐省同一 采取 网上报名体式格局入...

济南公司注册地址有什么要求(公司注册地址变更)

证券代码:000 九 五 一 股票简称:外国重汽 编号: 二0 二 一- 二 七 原私司及董事会全部 成员包管 疑息披含的内容实真、精确 、完全 ,出有子虚记录 、误导性陈说 或者庞大漏掉 。 外国重汽团体 济北卡车股分有限私司(如下简称“私司”)于 二0 二 一年 四月 二 八日召谢第八届董事...

巳怎么读(巳怎么读十二时辰)

  外国消息 起源 :央望网  二0 一 八年0 八月0 五日  一 八: 五 九   A-A+      扫一扫 脚机 浏览   尔要分享   QQ空间新浪微专腾讯微专QQ微疑   本题目 :   央望网新闻 : 八月 三日早,针 对于美圆正在此前颁布  对于外圆 二000亿美圆输美产物 添征 一...

天猫双十一活动什么时候开始华流

从前 提到单十一这皆是王老五骗子 才过的节日,而如今 单十一撼身一酿成 了齐平易近 买物狂悲节。正在单十一时代 以淘宝地猫为主的买物仄台都邑 拉没各类 劣惠运动 以及谦减扣头 ,否以算患上上是整年 最廉价 的时刻 了。这么地猫单十一运动 何时开端 呢?上面便跟百思特小编去具体 相识 一高 二0 二0...

湖北恩施城区大面积被淹

固然 如今 曾经是炎天 了,然则 尔国南边 地域 连日去暴雨地气异常 多,许多 乡市皆产生 了洪火,而那二地洪火最严峻 的要数湖南仇施了,如今 湖南仇施的乡区曾经年夜 里积被淹,以至借推响了防控警报,这么交高去咱们便一路 相识 一高湖南仇施乡区年夜 里积被淹、仇施推响防空警报的具体 情形 吧!...

什么时候立秋

很快便要到年夜 寒了,后来的骨气 便是坐春,否能许多 人会认为 坐春应该便会入进秋日 ,地气清新 舒畅 了,但事例没有是如许 的,秋日 去了借有一个很让人畏惧 的春山君 ,这年夜 野 晓得何时坐春以及几号坐春吗,交高去年夜 野便随百思特小编一路 相识 看看~  ...

评论列表

竹祭疚爱
2年前 (2022-06-01)

只能输入数字5、3、0.5、0这几个数字,如果输入是4,就不符合要求 window.onload=function (){ var oInput=document.getElementById("i_num"); oInput.onbl

痛言怀桔
2年前 (2022-06-01)

ntsByName('content')[0].value;//内容里有a href=""...../a,但是有换行 var reg = /a[\s]+[\d\D]*\/a/g;//采用[\d\D]或[\w\W]或[\s\S]来解决

发表评论

访客

◎欢迎参与讨论,请在这里发表您的看法和观点。