💎一站式轻松地调用各大LLM模型接口,支持GPT4、智谱、星火、月之暗面及文生图 广告
## 一、创建正则表达式 ### 模式修饰符 * i 忽略大小写 * g 全局,只要能匹配到的地方,都匹配 * m 多行匹配 ~~~ //第一种方式 var box=new RegExp('abcd','gi'); //第二种方式 var box=/abcd/gi; ~~~ ### 测试正则表达式的2种方法: #### test()方法 ,字符串中是否包含pattern,返回真假 ~~~ var pattern=/box/gi; var str="box is a box"; alert(pattern.test(str)); ~~~ #### exec();方法返回匹配数组,没有返回null ~~~ var pattern=/box/g; var str="box is a box"; alert(pattern.exec(str)); ~~~ ### string提供的4种方法,可以用在正则表达式 * match(pattern); //返回匹配的数组或null * replace(pattern,new); //参数:替换前后的内容,返回新的字符串 * search(pattern); 返回pattern开始的位置,查到即返回,无需全局 * split(pattern); //返回拆分后的数组 ## 二、获取控制 ![](https://box.kancloud.cn/a6b40550a35f52949d8c052436c164ea_703x277.png) ![](https://box.kancloud.cn/832fe1ecbf1a53cc832b34bf4f764e18_713x653.png) ![](https://box.kancloud.cn/391cdfd250098738b829b49c7a6ea9b6_687x485.png) ![](https://box.kancloud.cn/36d6a2aeff7b1591fef71a791e0aebde_681x96.png) ![](https://box.kancloud.cn/83238949390791339a7eeb418d225e86_686x234.png) ~~~ //一个点匹配一个字符 var pattern=/g..gle/gi; str = this is a google page! str.match(pattern); ~~~ 说明1: ~~~ /^0-9a-z/ //非0-9,非a-z /^[0-9]/ //行首0-9 ~~~ 说明2: ~~~ pattern.test(str); //不管何种方式。必须先运行一次 RegExp.$1; //获取pattern中的第一个分组的内容 ~~~ ~~~ var pattern=/8(.*)8/; var str="this is a 8google8"; document.write(str.replace(pattern,'<strong>$1</strong>')); ~~~ 交换2个分组的位置 ~~~ var pattern=/(.*)\s(.*)/; var str="baidu google"; document.write(str.replace(pattern,'<strong>$2 $1</strong>')); ~~~