中文两个,数字三个,正确。
下面的测试也正确。
var str = "中文123tets@#!#%$#[][{}";
document.write(str.length+'<br />');
document.write(cLength(str));
正则表达式取得匹配IP地址前三段
来源:如何用正则取IP前3段
192.168.118.101,192.168.118.72, 192.168.118.1都替换成:192.168.118
只要匹配掉最后一段并且替换为空字符串就行了,正则如下:
/\.\d{1,3}$/
匹配结尾的.n,.nn或者.nnn。
测试代码如下:
function replaceReg(reg,str){
return str.replace(reg,'')
}
var reg = /\.\d{1,3}$/;
var str = '192.168.118.101';
var str2 = '192.168.118.72';
var str3 = '192.168.118.1';
document.write(replaceReg(reg,str)+'<br />');
document.write(replaceReg(reg,str2)+'<br />');
document.write(replaceReg(reg,str3)+'<br />');
相似的有,这个帖子里有一个验证IP地址的方法:求检验MAC地址的正则表达例子
匹配<ul>与<ul>之间的内容
来源:请教个正则的小问题吧
<ul>safsf<ul>safsf</ul><ul>safsf</ul></ul>
用正则可以得到 <ul>起到下个<ul> 之间的内容。
正则如下:
/<ul>[\s\S]+?<ul>/i
首先匹配两侧的ul标签,中间的[\s\S]+?可以匹配一个或者多个任意字符,一定要非贪婪,否则会匹
配<ul>safsf<ul>safsf</ul><ul>。
用正则表达式获得文件名
来源:C:\006.JPG
c:\images\tupian\006.jpg
可能是直接在盘符根目录下,也可能在好几层目录下,要求替换到只剩文件名。
xlez的正则如下:
/[^\\\/]*[\\\/]+/g
首先匹配非左右斜线字符0或多个,然后是左右斜线一个或者多个。形如“xxx/”或者“xxx\”或者“/”或
者“\”
函数以及测试代码:
<script type="text/javascript">
function getFileName(str){
var reg = /[^\\\/]*[\\\/]+/g;
//xxx\或者是xxx/
str = str.replace(reg,'');
return str;
}