一:Javascript替换示例|Javascript字符串Replace()方法
目录
1:Javascript字符串replace()(替换某个字符串)
let myStr ='世界你好!';
console.log(myStr.replace('世界','世界 -'));
输出: '世界 -你好!'
2:Javascript替换正则表达式匹配(替换中括号)
// 去除中括号
var allimg = '["123","456"]';
console.log(allimg.replace(/\[|]/g,""));
输出:'"123","456"'
3:替换JavaScript中子字符串的多次出现(替换多次出现的数据)
var str="Hello world, I love the world! "
console.log(str.replace(/world/g, "motherland"));
输出:'Hello motherland, I love the motherland!'
4:Javascript替换所有空格(替换空格)
var str ='I love the world!';
console.log(str.split(" ").join("*"));
输出:'I*love*the*world!'
二:常用正则表达式
1:进行较复杂的替换操作时,常常需要搭配正则一起使用,下面列出一些常用正则表达式
在很多正则最后含有“/g” “/i”;
字符 | 作用 |
---|---|
i | 忽略大小写标志,忽略输入字符串的大小写(大写/小写) |
g | 全局标志,搜索多个匹配项而不是在第一个匹配项时停止 |
1.括号(替换所有大括号/中括号/小括号)
------------------------------
所有中括号:/\[|]/g
所有大括号:/\{|}/g
所有小括号及其内容:/\([^\)]*\)/g
------------------------------
var allimg = '["123","456"]';
console.log(allimg.replace(/\[|]/g,""));
输出:'"123","456"'
----------------------------------------
2.数字(验证是否为纯数字)
----------------------------------
var value = "123"
var isnum2 = /^\d+$/.test(value);
console.log(isnum2);
输出:'布尔值(true)'
----------------------------------
3.字母数字字符(验证字符串是否含有空格)
------------------------------------------
没有空格的字母数字 - /^[a-zA-Z0-9]*$/
带空格的字母数字 – /^[a-zA-Z0-9 ]*$/
------------------------------------------
var value = "12 3"
var isnum2 = /^[a-zA-Z0-9]*$/.test(value);
console.log(isnum2);
输出:'布尔值(true或false)'
-----------------------------------------
4.用户名(验证用户名是否规范)
---------------------------------------------
字母数字字符串 ,可能包含_,并且长度为3至16个字符–
/^[a-z0-9_-]{3,16}$/
---------------------------------------------
var value = "1_23"
var isnum2 = /^[a-z0-9_-]{3,16}$/.test(value);
console.log(isnum2);
输出:'布尔值(true或false)'
--------------------------------------------
5.网址
----------------------------------------------------------------------------------------
包括http协议
/https?:\/\/(www\.)?[-a-zA-Z0-9@:%._\+~#=]{2,256}\.[a-z]{2,6}\b([-a-zA-Z0-9@:%_\+.~#()?&//=]*)/
协议可选
/(https?:\/\/)?(www\.)?[-a-zA-Z0-9@:%._\+~#=]{2,256}\.[a-z]{2,6}\b([-a-zA-Z0-9@:%_\+.~#?&//=]*)/
---------------------------------------------------------------------------------------
var value = "https://www.baidu.com"
var isnum2 = /https?:\/\/(www\.)?[-a-zA-Z0-9@:%._\+~#=]{2,256}\.[a-z]{2,6}\b([-a-zA-Z0-9@:%_\+.~#()?&//=]*)/.test(value);
console.log(isnum2);
---------------------------------------------------------------------------------------
6.时间
-----------------------------------------------------
时间格式HH:MM 12小时 ,可选前导0
/^(0?[1-9]|1[0-2]):[0-5][0-9]$/
时间格式HH:MM 12小时,可选前导0, 子午线(AM / PM)
/((1[0-2]|0?[1-9]):([0-5][0-9]) ?([AaPp][Mm]))/
时间格式HH:MM 24小时 ,前0
/^(0[0-9]|1[0-9]|2[0-3]):[0-5][0-9]$/
时间格式HH:MM 24小时,可选前导0
/^([0-9]|0[0-9]|1[0-9]|2[0-3]):[0-5][0-9]$/
时间格式HH:MM:SS 24小时
/(?:[01]\d|2[0123]):(?:[012345]\d):(?:[012345]\d)/
----------------------------------------------------