① javascript正则匹配开头4个数字,哪里错了
alert(str.replace( /^([0-9]+)/),"$1");//有 错误,括号没配对
alert(str.replace( /^([0-9]+)/,"$1" ) );
/^([0-9]+)/ 匹配结果不止前4位,
如果指定4位为正确为
/^([0-9]{4}/
或 /^\d{4}/
② js正则表达式匹配以abc开头,以}或]或,结尾的字符串
你好,按照你的描述,写了一个正则:
var str = 'sdabc:"sads",asdas,"abc":"d"}asdasdasd"abc":232]';
var reg = /abc(.*?)(?=[\]\},])/g;
str.match(reg); // ['abc:"sads"', 'abc":"d"', 'abc":232']结果好像和你想得到的一样,回希望是你想要的答案。答
③ 用js的正则表达式检测电话号码,要求必须是1开头,只能是11位数字,该正则表达式怎么写
表达式写法是:/^1d{10}$/
解析:^1 以1开头,d表示数字,d{10}表尺圆扰示数字出现10次,加上前面以1开头,正好是11个数字,X$表示以X结尾,这里用$表示后面没有了,11个数字后已经是匹配字符串的结尾。
结果展示:
④ javascript js正则如何匹配以某字符串开始以某字符串结束的字符串中的字符
vara='<div><a><imgsrc="file:///c:/ssd/ads.jpg"></a></div>';
while(/(file:///[^/]*)/(.*")/.test(a))
a=a.replace(/(file:///[^/]*)/(.*")/,"$1\$2");
这样可以替换file:///开头,以"结尾的字符串中的所有/符号了,由于要匹配file:///开头,以"结尾,正则中必须在开始加上file:///结尾加上".而加上了这,replace方法的时候就算正则加上g,也是只替换一次了.所以加个WHILE循环.就可以全部替换了.不过正则还不能定义为变量.定义了变量,下面用变量的话,还是只替换一次,这我也不清楚是为什么了,可能跟Js中正则表达式对象的某些属性有关吧.
不太懂Js,就学了四天...
这种情况最好把中间这串拿出来替换好再放回去如下
vara='<div><a><imgsrc="file:///c:/ssd/ads.jpg"></a></div>';
varre=/file:///.*"/;
varb=re.exec(a)[0];//拿到整个字符串中以file:///开头,以"结尾的字符串
b=b.replace(///g,"\");//把拿到的字符串中的/全部替换成
b=b.replace(/file:\\\/,"file:///");
a=a.replace(re,b);
第一种的那个没问题的.第二个仔细看了下,是我大意了,加上一句b=b.replace(/file:\\\/,"file:///");就好了,不过感觉比第一种麻烦了.用第一种的那个就好了
⑤ 求javascript js正则表达式匹配以@@开头@@结尾,不包含@@的字符串
这个简单。正则表达式:
/@@(.*)@@/;
使用方式:
var
re
=
@@(.*)@@/;
var
result
=
re.exec(str);
如果匹配,result是非空的数组,第一个元素就是不包含@@的字符串。
⑥ 用js的正则表达式检测电话号码,要求,必须是1开头,只能是数字,并且是11位数字,这儿正则表达式怎么写
正则表达式:/^1d{10}$/
答案演示:
表达式意思解析:
(1)以1为开头;
(2)d表示数字,d{10}表示出现10次数字;
(3)$表示结尾,即匹配输入字符串的结尾位置;
(4)根据(1)、(2)、(3),正好表示11位数字
(6)js正则匹配开头扩展阅读:
更严格的电话号码校验正则表达式:
(1)/^1(3|4|5|7|8)d{9}$/ ,这个表达式才是真正有效的电话号码的正则表达式,表示必须以1做开头,第二位可以是3,4,5,7,8,中的任意一位,后面9位数字可以是0-9任意数字。
身份证的校验正则表达式:
(1)(^d{15}$)|(^d{17}([0-9]|X)$),表示匹配15位或18位身份证,且可以匹配出以X结尾的身份证号码。
参考资料来源:网络-正则表达式
⑦ js 正则如何匹配指定字符前面的几位,替换成指定字符串
题主你好,
匹配的内容为:/d{1,}=
替换的内容为:arr:
加上全局替换标志g,否则只会替换第一个.
*****测试代码*****
-----
希望可以帮到题主,欢迎追问.
⑧ 求javascript js正则表达式匹配以@@开头@@结尾,不包含@@的字符串
^String regex = "^A*C*B$"; Pattern p = Pattern.compile(regex); java.util.regex.Matcher m = p.matcher("这里是你要匹配的字回符串答"); while (m.find()) { System.out.println(m.group()); }
⑨ js用正则表达式来匹配指定头和尾的字符
我看了一下你要替换的字符串的规律,都是以Sele和下横线开头,紧接一串数字,最后以@号结尾。根据这个规律,我写了以下正则表达式,已调试成功:
varreg=/Sele_d+@/g;//给变量reg赋值正则表达式
a=a.replace(reg,"");
//代码解析:
//正则表达式用两个/号装起来
//其中d表示数字
//后面跟着+号表示匹配1个或多个数字
//最后的字母g表示global(全局匹配),如果没有字母g则只匹配第一个……
希望能帮到你。