正則匹配字串小記

2021-10-08 06:43:15 字數 444 閱讀 9970

需求1. 現有"裝置名_dev.json" , 「裝置名_廠商名_型號名_dev.json」 , 「_裝置名.json」 , 「_廠商名_型號名.json」 , 「_型號名_廠商名.json」 , 「裝置名_廠商名_bu.json」 等字串,要求匹配出符合規則的字串,並且根據傳入的裝置名或者廠商名或者型號名講字串中對應的內容修改。

裝置名 字串規則: 裝置名_dev.json

型號 字串規則 : 裝置名_廠商名_型號名_dev.json

匹配裝置名:

^裝置名((_.*)+(_dev|_bu|_basic))?(.json)$
匹配廠商名

([^]*)廠商名_(.*)+((_dev|_bu|_basic).json)$

匹配型號名:

^(?!_)(.*)_型號名((_dev|_bu|_basic).json)$

字串正則匹配

匹配1個或多個 匹配乙個 abc a b false abc a?c true abc a true ab a false 重點就是處理掉 如果匹配的時候 後面沒有字元了那返回真,如果有的話,那麼很簡單,從str中從後往前拿pattern 中 從 開始到pattern末尾個字元個數的字元,繼續遞迴匹...

字串匹配演算法問題小記

bf演算法也叫樸素模式匹配演算法,是由bruce force提出來的,演算法基本思想就是簡單粗暴的一次比較的問題。演算法的c 實現很簡單,但是在操作中遇到了一些細節問題。問題 include include include define len 100 intb findex char s,char...

正則匹配字串無匹配不到 字串匹配演算法

我們先說下定義,比如說我們要在a字串中查詢字串b,那麼a就是主串,b就是模式串 我們把主串的長度記為n,把模式串的長度記為m,n m bf brute force 中文名 暴力匹配演算法,樸素匹配演算法 簡單的說bf的演算法就是在主串中查詢起始位置是0,1,2,n m個且長度為m的n m 1個子串,...