1. 捕获字符串中的某些值,比如a标签中的href和text
let str='百度'
const reg=/(.*)/
const result=reg.exec(str)
result 数组:
[0] 百度
[1] http:www.baidu.com
[2] 百度
可以看出:此数组的第 0 个元素是与正则表达式相匹配的文本,第 1 个元素是与 RegExpObject 的第 1 个子表达式相匹配的文本,第 2 个元素是与 RegExpObject 的第 2 个子表达式相匹配的文本。
2.使用命名进行捕获:
let str='百度'
const reg=/(?
const result=reg.exec(str)
result 中有groups:例如
result.groups.url --> http:www.baidu.com
3.正向断言:根据要检索的内容后面的字符匹配进行检索
let str='JS123456哈哈456啦啦啦'
const reg=/\d+(?=啦)/
const result=reg.exec(str)
[0] --> 456(哈哈456啦啦啦中的456)
4.反向断言:根据要检索的内容的前面的字符匹配进行检索
let str='JS123456哈哈456啦啦啦'
const reg=/(?>=哈)\d+/
const result=reg.exec(str)
[0] --> 456(哈哈456啦啦啦中的456)