js如何利用正则表达式截取指定长度字符串

JavaScript018

js如何利用正则表达式截取指定长度字符串,第1张

Javascript 字符串上的方法(性能好)

var str = "It's a long string."

var length = 10

console.log( str.slice( 0, length ) ) // "It's a lon"

用正则(match)

var str = "It's a long string."

var length = 10

var regExp = new RegExp( "^(.{0," + length + "}).*$" ) // /^(.{0,10}).*$/

console.log( str.match( regExp )[ 1 ] ) // "It's a lon"

用正则(replace)

var str = "It's a long string."

var length = 10

var regExp = new RegExp( "^(.{0," + length + "}).*$" ) // /^(.{0,10}).*$/

console.log( str.replace( regExp, "$1" ) ) // "It's a lon"

\.\d{4,}$

这是对应正则的小数部分,\.表示小数点,\d为数字,\d{4,}表示最少有4个数字,$表示字符串的结束,如果符合这个正则就表示在字符串最后至少有4位小数

reg=/^\d+\.\d{4,}$/

完整的数字正则可以像这样写

完整的js正则表达式:

//强:字母+数字+特殊字符

^(?![a-zA-z]+$)(?!\d+$)(?![!@#$%^&*]+$)(?![a-zA-z\d]+$)(?![a-zA-z!@#$%^&*]+$)(?![\d!@#$%^&*]+$)[a-zA-Z\d!@#$%^&*]+$    

//中:字母+数字,字母+特殊字符,数字+特殊字符

^(?![a-zA-z]+$)(?!\d+$)(?![!@#$%^&*]+$)[a-zA-Z\d!@#$%^&*]+$

//弱:纯数字,纯字母,纯特殊字符

^(?:\d+|[a-zA-Z]+|[!@#$%^&*]+)$

//校验是否全由数字组成function isDigit(s){var patrn=/^[0-9]{1,20}$/if (!patrn.exec(s)) return false

return true

}//校验登录名:只能输入5-20个以字母开头、可带数字、“_”、“.”的字串function isRegisterUserName(s){var patrn=/^[a-zA-Z]{1}([a-zA-Z0-9]|[._]){4,19}$/if (!patrn.exec(s)) return falsereturn true}function isRegisterUserName(s){var patrn=/^[a-zA-Z]{1}([a-zA-Z0-9]|[._]){4,19}$/if (!patrn.exec(s)) return false

return true}

//校验用户姓名:只能输入1-30个以字母开头的字串Javascript代码function isTrueName(s){var patrn=/^[a-zA-Z]{1,30}$/if (!patrn.exec(s)) return falsereturn true}}}

//校验密码:只能输入6-20个字母、数字、下划线

function isPasswd(s){var patrn=/^(\w){6,20}$/if (!patrn.exec(s)) return falsereturn true}

//校验普通电话、传真号码:可以“+”开头,除数字外,可含有“-”

function isTel(s){//var patrn=/^[+]{0,1}(\d){1,3}[ ]?([-]?(\d){1,12})+$/var patrn=/^[+]{0,1}(\d){1,3}[ ]?([-]?((\d)|[ ]){1,12})+$/if (!patrn.exec(s)) return falsereturn true}

//校验手机号码:必须以数字开头,除数字外,可含有“-”

function isMobil(s){var patrn=/^[+]{0,1}(\d){1,3}[ ]?([-]?((\d)|[ ]){1,12})+$/if (!patrn.exec(s)) return falsereturn true}

//校验邮政编码

function isPostalCode(s){//var patrn=/^[a-zA-Z0-9]{3,12}$/var patrn=/^[a-zA-Z0-9 ]{3,12}$/if (!patrn.exec(s)) return falsereturn true}

//校验搜索关键字

function isSearch(s){var patrn=/^[^`~!@#$%^&*()+=|\\\][\]\{\}:'\,.<>/?]{1}[^`~!@$%^&()+=|\\\][\]\{\}:'\,.<>?]{0,19}$/if (!patrn.exec(s)) return falsereturn true}function isIP(s) //by zergling{var patrn=/^[0-9.]{1,20}$/if (!patrn.exec(s)) return falsereturn true}