正则表达式匹配及替换

在移动端的WKWebView开发中,需要将网页正文中的一串数字识别为会议号等,用户可点击会议号调用拨打音视频会议的功能。

实现思路:

  1. 获取当前网站HTML源码, 根据正则匹配到合法的数字,插入tel:协议的链接;
  2. 点击链接时,在- (void)webView:(WKWebView *)webView decidePolicyForNavigationAction:(WKNavigationAction *)navigationAction decisionHandler:(void (^)(WKNavigationActionPolicy))decisionHandler;中劫持tel:方法的响应;
  3. tel:实现中调用native音视频的呼叫api

代码案例, 拨打89开头的8位会议号:

 document.body.innerHTML = document.body.innerHTML.replace(/(89)\d{6}/g,'<a href="tel:$&">$&</a>') 

posted on 2020-05-01 18:01  Herooic  阅读(276)  评论(0编辑  收藏  举报

导航