正則表達式之簡易markdown文件解析器
使用正則表達式也可以寫一個簡單的markdown解析器
一般的markdown表達式是這樣
# 這是一個markdown表達式
## 這是一個markdown表達式
一行一個markdown表達式,所以可以使用split(‘n‘)將markdown內容分割為一個數組,數組的都每一項都是一個markdown表達式
然後再對每一行表達式進行解析,假如匹配到了如下表達式
# 這是一個markdown表達式
## 這是一個markdown表達式
可以這樣處理
arry = row.match(/^#\s/)
if (arry[0] == ‘#‘) {
‘<h1>‘ + rows.substring(2) + ‘</h1>‘;
}
將得到以下HTML語句
<h1>這是一個markdown表達式</h1>
<h2>這是一個markdown表達式</h2>
再把得到的HTML語句渲染到DOM中 就完成了一次markdown文本解析了
對於其他的markdown也是遵循這個規則來處理
先來看一個簡單的DEMO
這是項目代碼
正則表達式之簡易markdown文件解析器
相關推薦
正則表達式之簡易markdown文件解析器
正則表達式 其他 index task err types spa 使用 har 使用正則表達式也可以寫一個簡單的markdown解析器一般的markdown表達式是這樣 # 這是一個markdown表達式 ## 這是一個markdown表達式 一行一個markdown表達
正則表達式之 數據驗證 與 文本替換
密碼 表達 個數字 repl 字符 密碼強度 身份證 replace style 一、數據驗證 用戶名正則:4到16位(字母 數字 下劃線 減號); 密碼強度正則:最少6位,包括至少1個,大寫字母,1個小寫字母,1個數字,1個特殊字符; EMAIL正則:; 身份證號正則:;
正則表達式之分組
表達式 字符串 假設有如下幾行文本:"xxx" : {"name" : "123"} "yyy" : {"name" : "456"} "zzz" : {"name" : "789"} 如果匹配出第1條和第3條,那麽可以使用以下的正則表達式:"((xxx)|(zzz))".* 其中,最外層的括
刨根究底正則表達式之零——前言
modifier rcu latex 多人 www 不同 空間 收藏 link 前言 一、緣起 1. 前面在字符編碼系列文章的前言中曾說過,類似於字符編碼這樣基礎、重要、應用廣泛而又特別容易讓人困惑的主題還有字節序(即大小端表示)、正則表達式以及浮點數實現、日期時間
Python正則表達式之findall疑點
div 表達 clas 例子 表達式 如何實現 如何 正則表達式 正則表達 在findall中使用()進行分組時,得出的結果會優先提取分組的,比如下面這個例子 1 In [46]: re.findall(r"www.(baidu|163).com", "www.baidu
正則表達式之匹配中文漢字的正則表達式介紹
我想 但是 則表達式 來講 介紹 bsp code 分鐘 想要 這篇文章主要介紹了通過正則表達式準確匹配出字符串中存在的中文漢字,同時還有匹配雙字節字符的正則,需要的朋友可以參考下 \w匹配的僅僅是中文,數字,字母,但是對於特殊需求來講,僅匹配中文時常會用到 匹配中文字符
正則表達式之你不知道的replace
執行 兩個 引擎 logs blog 學無止境 div 國慶節 另一個 我們都知道js內置類String提供了一個replace方法,可以把指定字符串替換為另一個字符串,他的基礎用法如下: 1 var str="hello world"; 2 3 var str=str
正則表達式之Python編程
正則 表達式 正則表達式介紹正則表達式re模塊正則表達式語法字符匹配.[...]re模塊相關方法使用re.sub(patter, repl, string, count=0, flags=0)split(pattern, string, maxsplit=0, flags=0)本文出自 “運維自動化”
Linux運維正則表達式之awk
sed pro inux運維 結構 inux 更改 部分 ram root 一:Linux運維正則表達式之sed AWK是一個優良的文本處理工具,Linux及Unix環境中現有的功能最強大的數據處理引擎之一。 1.選項|參數: -F fs or --field-separa
python3進階之正則表達式之基本概念
py3 例如 它的 字符串 限制 則表達式 tab 結束 描述 1.概念 正則表達式是一種用來匹配字符串的強有力的武器。它的設計思想是用一種描述性的語言來給字符串定義一個規則,凡是符合規則的字符串,我們就認為它“匹配”了,否則,該字符串就是不合法的。 2.示例應用
python正則表達式之re模塊使用
匹配 flag clas art 則表達式 python fin pre div python第一個正則表達式 r‘imooc‘ Pattern Match result In [2]: import re In [3]: pa = re.compile(r‘imoo
Python正則表達式之 - ?: / ?= / ?!
順序存儲 一位 元字符 進制數 表達 字符串 python 緩沖區 marked Python正則表達式之 - ?: / ?= / ?! 用圓括號將所有選擇項括起來,相鄰的選擇項之間用|分隔。但用圓括號會有一個副作用,使相關的匹配會被緩存,此時可用?:放在第一個選項前來消除
Python學習筆記模式匹配與正則表達式之用正則表達式匹配更多模式
重復 實例 int clas span 就是 image 特定 mat 隨筆記錄方便自己和同路人查閱。 #------------------------------------------------我是可恥的分割線--------------------------
正則表達式之基本原理
好的 無法 初始 狀態 特性 www 提高 影響 圖片 正則文法介紹 https://www.cnblogs.com/longhuihu/p/4128203.html 要了解正則表達式的原理,需要先了解一些計算機語言文法的基礎知識。 一個文法可以用一個四元來定義,G =
JS正則表達式之--?:
正則表達 冒號 由於 http img bsp 分享圖片 image -c 使用形如(?:pattern)的正則就可以避免保存括號內的匹配結果。 ?:匹配冒號後的內容但是不獲取匹配結果;不進行儲存供以後使用 下面這個正則是為了實現只匹配以b或者c開頭的字符串,一直匹配到換
Nginx正則表達式之匹配操作符詳解
而且 message jce tail 兩個 version 速度 體系 防盜 開發十年,就只剩下這套架構體系了! >>> ##tensorflow學習課程 https://developers.google.com/machine-lea
js正則表達式之人民幣匹配
出現 con foreach 結果 分組 小數 light info length 人民幣格式匹配 小寫格式:¥ 符號 和 整數值 與小數3部分組成。 (0)代碼與運行結果 { // 匹配人民幣 let [reg, info, rmb,
正則表達式之提取括號內內容
class lin writer var 正則 span 正則表達式 內容 console string str="aaaaaaaaa(bbbb)cccc"; var patern = "(?<=\\()[^\\)]+"; if (Regex.
正則表達式之不區分大小寫的匹配
constant names text nts ostream ons 區分 main port 對於兩段文本 這句話裏有two個word。 這句話裏有tWo個WoRd。 我希望用同一個正則表達式將其中的單詞two、word、tWo、WoRd提取出來
Python學習筆記模式匹配與正則表達式之字符分類
17. idg rds auto light ron compile .com print 隨筆記錄方便自己和同路人查閱。 #------------------------------------------------我是可恥的分割線----------------