![8800dd3bf8261a51164efe1ea7b30eb6.png](https://i-blog.csdnimg.cn/blog_migrate/e6da12be267d255599fd314f4e26ecf7.jpeg)
分享一个正则的小案例,提取字符串中的所以数字并求和,首先pq里是没有正则的,但可以利用Web.Page调用javascript实现pq里使用正则,具体之前有分享过。具体效果如下
![f5c253dcaba2b80141d2c2e0ad5e1758.png](https://i-blog.csdnimg.cn/blog_migrate/e3ce2bac4cc3cf6143a705ccec44e665.jpeg)
js里使用正则的方式有两种,一种字符串的形式(str.replace...之前有分享过)第二种是创建对象的形式,大叔今天的笔记内容是第二种,以创建对象的形式。
创建一个rge对象 var reg=/表达式/ regexp对象有两个方法,test()跟exec(),今天要用到的是exec(),作用是返回一个‘数组’存放匹配的内容,没匹配到就返回null。
![04626b446115d32801656631fd461d84.png](https://i-blog.csdnimg.cn/blog_migrate/0242f1aa4dfb94d19ff14eb480135484.png)
如上图,返回数组存放匹配到的内容,结果应该是[1,2,3],那么遍历数组就可以拿到累计数了。
但是,事实上可能会让你失望,接着分别打印一下0 1 2看看结果。
![c778164f5bf2c890096df4696a9d2d66.png](https://i-blog.csdnimg.cn/blog_migrate/f62e1fb2890b426aa1be69e44b11b982.png)
这就尴尬了,难道这个不是数组,他还真是个数组,不信我们验证一下
![8d11f7a296f43cf25a01bd58cebea2ab.png](https://i-blog.csdnimg.cn/blog_migrate/c131704cf9182efa2074e5bf4d8a1ac8.png)
我们再次打印,打开3次索引都为0,再看看结果,这次才是我们想要的结果
![f2f30613ef45465b3f7128378dfe24d1.png](https://i-blog.csdnimg.cn/blog_migrate/e879db40faaf2504c61363e3d0521e82.png)
接着do while循环就累计就是我们想要的结果了
![39f2a63a96e8318d70fb01b65f23ab0c.png](https://i-blog.csdnimg.cn/blog_migrate/35e06093bfcd4f5b9f95f82634760643.png)
![0665e7b5ed917e062171dda8e6851081.png](https://i-blog.csdnimg.cn/blog_migrate/075537aba86a2015243b91aef035ca47.jpeg)
分享结束,感谢观看,Thanks!