技巧:用正則表達(dá)式打造專屬格式化規(guī)則)
Obsidian Easy Typing高級(jí)技巧用正則表達(dá)式打造專屬格式化規(guī)則【免費(fèi)下載鏈接】easy-typing-obsidianThis is a plugin of obsidian for users writing in an easy way.項(xiàng)目地址: https://gitcode.com/gh_mirrors/ea/easy-typing-obsidianObsidian Easy Typing是一款強(qiáng)大的Obsidian插件它通過(guò)統(tǒng)一的規(guī)則引擎幫助用戶更輕松地進(jìn)行文本編輯支持從基礎(chǔ)的全角半角標(biāo)點(diǎn)轉(zhuǎn)換到自定義快捷輸入等多種功能。本文將重點(diǎn)介紹如何利用正則表達(dá)式創(chuàng)建專屬的格式化規(guī)則讓你的筆記編輯效率提升到新高度。為什么選擇正則表達(dá)式規(guī)則正則表達(dá)式Regex是處理文本模式的強(qiáng)大工具它能讓你創(chuàng)建高度定制化的文本轉(zhuǎn)換規(guī)則。Easy Typing的規(guī)則引擎完全支持正則表達(dá)式這意味著你可以實(shí)現(xiàn)復(fù)雜的文本匹配與替換創(chuàng)建智能的上下文感知規(guī)則批量處理和轉(zhuǎn)換文本格式構(gòu)建個(gè)性化的快捷輸入方式無(wú)論是學(xué)術(shù)寫作、編程筆記還是日常記錄正則表達(dá)式規(guī)則都能幫你自動(dòng)化重復(fù)的格式化工作讓你專注于內(nèi)容創(chuàng)作本身。正則規(guī)則基礎(chǔ)從簡(jiǎn)單到高級(jí)啟用正則匹配模式在創(chuàng)建自定義規(guī)則時(shí)只需在規(guī)則編輯面板中勾選使用正則表達(dá)式匹配選項(xiàng)即可開啟正則模式。Easy Typing支持標(biāo)準(zhǔn)正則語(yǔ)法包括字符類[a-z]、\d、\w量詞*、、?、{n,m}分組(...)斷言(?...)、(?...)目前支持的正則標(biāo)志有i大小寫不敏感、m多行模式和uUnicode模式。捕獲組與引用正則表達(dá)式的強(qiáng)大之處在于能夠捕獲文本片段并在替換時(shí)引用它們。Easy Typing使用[[n]]語(yǔ)法引用捕獲組[[0]]整個(gè)匹配結(jié)果[[1]]、[[2]]...第n個(gè)捕獲組[[R0]]、[[R1]]...右側(cè)匹配的捕獲組例如要將note-call轉(zhuǎn)換為Obsidian Callout塊你可以使用光標(biāo)前匹配^([\w-])-call開啟多行模式m替換內(nèi)容 [![[1]]] $0\n $1這條規(guī)則會(huì)將在行首輸入的tip-call轉(zhuǎn)換為 [!tip] tip實(shí)用正則規(guī)則示例1. 智能大小寫修正將單獨(dú)的小寫i自動(dòng)轉(zhuǎn)換為大寫I面板字段值類型輸入光標(biāo)前匹配(^|[ \t])i([ \t.,!?;:])使用正則表達(dá)式匹配開啟正則標(biāo)志m替換內(nèi)容[[1]]I[[2]]$0這條規(guī)則會(huì)在行首或空格、標(biāo)點(diǎn)后將單獨(dú)的i轉(zhuǎn)換為I同時(shí)保留前后的分隔符。2. 代碼塊快捷輸入為Python代碼塊創(chuàng)建快捷輸入面板字段值類型輸入觸發(fā)方式Tab光標(biāo)前匹配ifmain替換內(nèi)容if __name__ __main__:\n $0作用域代碼語(yǔ)言python輸入ifmain后按Tab鍵將自動(dòng)展開為Python的主程序入口模板。3. 任務(wù)項(xiàng)快速轉(zhuǎn)換創(chuàng)建刪除規(guī)則將任務(wù)項(xiàng)退化為普通列表項(xiàng)面板字段值類型刪除光標(biāo)前匹配([-*]) \[.\]使用正則表達(dá)式匹配開啟替換內(nèi)容[[1]]當(dāng)你刪除任務(wù)項(xiàng)的復(fù)選框時(shí)這條規(guī)則會(huì)自動(dòng)移除括號(hào)保留列表符號(hào)。高級(jí)技巧正則與函數(shù)式替換結(jié)合Easy Typing允許你結(jié)合正則表達(dá)式和JavaScript函數(shù)創(chuàng)建更強(qiáng)大的動(dòng)態(tài)規(guī)則。例如創(chuàng)建一個(gè)智能時(shí)間插入規(guī)則面板字段值類型輸入光標(biāo)前匹配/now使用函數(shù)式替換開啟替換內(nèi)容代碼const d new Date(); const pad n String(n).padStart(2, 0); return ${d.getFullYear()}-${pad(d.getMonth()1)}-${pad(d.getDate())} ${pad(d.getHours())}:${pad(d.getMinutes())}$0;輸入/now后將自動(dòng)替換為當(dāng)前日期和時(shí)間如2023-11-15 14:30。規(guī)則管理與分享創(chuàng)建好的正則規(guī)則可以通過(guò)設(shè)置面板中的導(dǎo)出功能保存為JSON文件方便備份或分享給其他Obsidian用戶。規(guī)則文件存儲(chǔ)在插件目錄中內(nèi)置規(guī)則builtin-rules.json用戶自定義規(guī)則user-rules.json你也可以通過(guò)導(dǎo)入功能快速添加社區(qū)分享的正則規(guī)則集合擴(kuò)展你的編輯工具箱。常見問題與解決方案規(guī)則不生效怎么辦檢查規(guī)則的作用域設(shè)置確保在當(dāng)前編輯上下文下規(guī)則處于激活狀態(tài)確認(rèn)規(guī)則的優(yōu)先級(jí)數(shù)值越小優(yōu)先級(jí)越高避免被其他規(guī)則覆蓋使用測(cè)試功能驗(yàn)證正則表達(dá)式是否正確匹配目標(biāo)文本檢查是否有沖突的規(guī)則特別是觸發(fā)模式相似的規(guī)則如何調(diào)試復(fù)雜正則規(guī)則從簡(jiǎn)單模式開始逐步添加復(fù)雜度使用在線正則測(cè)試工具如regex101驗(yàn)證正則表達(dá)式利用規(guī)則的描述字段記錄規(guī)則的用途和注意事項(xiàng)暫時(shí)提高規(guī)則優(yōu)先級(jí)確保它能被優(yōu)先觸發(fā)和測(cè)試總結(jié)正則表達(dá)式是Obsidian Easy Typing插件的高級(jí)功能它為用戶提供了無(wú)限的自定義可能性。通過(guò)本文介紹的技巧和示例你可以創(chuàng)建適合自己 workflow 的專屬格式化規(guī)則顯著提升筆記編輯效率。無(wú)論是簡(jiǎn)單的文本替換還是復(fù)雜的上下文感知轉(zhuǎn)換正則表達(dá)式都能幫你實(shí)現(xiàn)。開始探索正則規(guī)則的強(qiáng)大功能打造屬于你的高效Obsidian編輯體驗(yàn)吧更多詳細(xì)內(nèi)容請(qǐng)參閱官方文檔Doc/CustomRules_ZH.md【免費(fèi)下載鏈接】easy-typing-obsidianThis is a plugin of obsidian for users writing in an easy way.項(xiàng)目地址: https://gitcode.com/gh_mirrors/ea/easy-typing-obsidian創(chuàng)作聲明:本文部分內(nèi)容由AI輔助生成(AIGC),僅供參考