正則表達式(Regular Expression)是用單字符串來匹配一系列複合條件字符串的模式,對於喬姆斯基3型語法。javascript
數學定義:
串行AB表示集合 {αβ | α ∈ A ,β ∈ B }
並行A|B表示集合{α | α ∈ A or α ∈ B}
子集複合A* 表示集合{a,b} = {ε,a,b,aa,ab,bb...}html
這種定義下的正則表達式可以被有限自動機解析。java
同其餘編程概念,轉義有兩種做用:react
//1. string 操做的字符串 //2. regex 正則表達式 //3. replacement 須要替換的效果 string.replace(regex,replacement) //demo— /g表示全局替換 str = str.replace(/raw/g,"dealed");
調用博客園API直接返回的內容不能只用react native中的html解析組件直接使用。
能夠使用JS正則進行處理。正則表達式
需求:<a href="url"><img src = "url" border="0" onload="..."/></a>
替換成 <img src="url"/>
編程
//$1表示第一個參數(.*?)匹配到的部分 function ConvertPicture(raw){ let result = raw.replace(/<a href=(.*?) target="_blank"><img(.*?)<\/a>/g,'<img src=$1 alt="圖片"/>'); return result; }
一樣,其餘的轉換相似。
需求:<a href="http://www.hao123.com" target="_blank">測試超連接</a>
轉換成 [測試超連接]("url")
測試
function ConvertHref(raw){ let result = raw.replace(/<a href=(.*?) target="_blank">(.*?)<\/a>/g,'["$2"]("$1")'); return result; }