1. 程式人生 > >正則表示式給查詢到的內容加引號

正則表示式給查詢到的內容加引號

首先介紹一下正則表示式的基本語法,不使用任何一門語言,就使用notepad++進行正則表示式的操作。

  • 正則表示式:正則表示式表達就是操作字串的一個規則,正則表示式使用了特殊的符號表示。
  • 正則表示式對字串的操作主要有一下集中應用:

    1. 匹配
    2. 切割
    3. 替換
    4. 查詢
  • 預定義字元(注意:任何預定義字元沒有加上數量詞之前都只能匹配一個字元,比如"12"就不能被”\\d“匹配):

    1. . 表示任何字元(與行結束符可能匹配也可能不匹配)
    2. \d 數字:[0-9]
    3. \D 非數字字元:[^0-9]
    4. \s 空白字元:[\t\n\xoB\f\r]
    5. \S 非空白字元:[^\s]
    6. \w 單詞字元:[a-zA-Z_0-9]就是包括a-z,A-Z,0-9,下劃線。
  • 數量詞:

    1. X? X,一次或一次也沒有
    2. X* X,零次或多次
    3. X+ X,一次或者多次
    4. X{n} X,恰好n次
    5. X{n,} X,至少n次
    6. X{n,m} X,至少n次,但是不超過m次
  • 範圍詞(只能匹配一個字元):

    1. [abc] a,b或者c
    2. [^abc] 任何字元,除了a,b或c
    3. [a-zA-Z] a到z或A-Z,兩頭的字母包括在內(範圍)
    4. [a-dm-p] a到d或者m到p
    5. 注意:範圍詞裡不管內容有多長,沒有數量詞的配合都只能匹配一個字元而已。
  • 正則表示式之分組匹配及反向引用
    1. 如果正則的內容需要被複用,那麼需要對正則的內容進行分組。分組的目的就是為了提高正則的複用性。組號不能自己指定,組號從1開始。
    2. 分組巢狀關係說明:((A)(B(C))):一共四組,1號組是((A)(B(C))),2號組是(A),3號組為(B(C)),4號組(C).\1:引用第一組所匹配到的內容。這樣的話巢狀關係就很容易看見了。
    3. \1$1  用於匹配第一個分組中的內容
      \2$2  用於匹配第一個分組中的內容

      \9$9  用於匹配第一個分組中的內容
    4. 一般情況下我們匹配任意兩個相同的字元就可以用\1或者$1等來引用比如字串"AA Am 99",現在要匹配出重複的字元,用這個(\w)\1正則表示式就可以,匹配結果:"AA", "99"
    5. 說明:(\w)用來匹配任何除了換行和製表符的字元, 而\1是對(\w)的一個引用, 所以你可以理解成: (\w)\1
      就是(\w)(\w)但是,(\w)\1(\w)(\w)的不同之處在於, (\w)(\w)表示任意兩個連續的字元, 比如Ac, MM, K9, 都可以,但(\w)\1只能是AA, CC, 99 這樣連續相同的字元所以, 你可以這樣理解, \1 是對(\w)的一個例項化引用, 當(\w) 匹配到A時, \1 被表達成A, 當(\w)匹配9時, \1 被表示成9
  • 現在用notepad++的正則表示式查詢內容並把內容加上引號。
    1. 現在給出資料:
{"dev_id":C1088941,"time":2017-06-01T08:01:08,"voltage":215.67,"current":0.94,"speed":0,"status":false,
"temperature":25.3,"humdity":0.52},
{"dev_id":C1088941,"time":2017-06-01T08:11:02,"voltage":217.38,"current":0.69,"speed":0,"status":false,
"temperature":29.3,"humdity":0.48},
{"dev_id":C1088941,"time":2017-06-01T08:21:08,"voltage":211.83,"current":0.35,"speed":0,"status":false,
"temperature":31.9,"humdity":0.45},
{"dev_id":C1088941,"time":2017-06-01T08:31:02,"voltage":215.31,"current":0.40,"speed":0,"status":false,
"temperature":25.3,"humdity":0.45},
{"dev_id":C1088941,"time":2017-06-01T08:41:07,"voltage":211.72,"current":0.12,"speed":0,"status":false,
"temperature":30.4,"humdity":0.50},
{"dev_id":C1088941,"time":2017-06-01T08:51:05,"voltage":214.48,"current":0.36,"speed":0,"status":false,
"temperature":28.3,"humdity":0.46},
{"dev_id":C1088941,"time":2017-06-01T09:01:05,"voltage":217.45,"current":0.97,"speed":0,"status":false,
"temperature":32.9,"humdity":0.52},
{"dev_id":C1088941,"time":2017-06-01T09:11:01,"voltage":215.60,"current":0.83,"speed":0,"status":false,
"temperature":25.3,"humdity":0.48},
{"dev_id":C1088941,"time":2017-06-01T09:21:07,"voltage":215.98,"current":0.74,"speed":0,"status":false,
"temperature":27.2,"humdity":0.52},
{"dev_id":C1088941,"time":2017-06-01T09:31:04,"voltage":210.28,"current":0.81,"speed":0,"status":false,
"temperature":26.9,"humdity":0.48},
{"dev_id":C1088941,"time":2017-06-01T09:41:03,"voltage":216.37,"current":0.03,"speed":0,"status":false,
"temperature":32.2,"humdity":0.54},
{"dev_id":C1088941,"time":2017-06-01T09:51:06,"voltage":219.76,"current":0.03,"speed":0,"status":false,
"temperature":33.4,"humdity":0.51},
{"dev_id":C1088941,"time":2017-06-01T10:01:06,"voltage":216.27,"current":0.52,"speed":0,"status":false,
"temperature":25.3,"humdity":0.45},
{"dev_id":C1088941,"time":2017-06-01T10:11:02,"voltage":212.90,"current":0.38,"speed":0,"status":false,
"temperature":27.4,"humdity":0.47},
{"dev_id":C1088941,"time":2017-06-01T10:21:08,"voltage":216.21,"current":0.40,"speed":0,"status":false,
"temperature":33.2,"humdity":0.51},
{"dev_id":C1088941,"time":2017-06-01T10:31:03,"voltage":210.62,"current":0.48,"speed":0,"status":false,
"temperature":29.6,"humdity":0.51}"

現在把這個文字資料中的日期找到並且加上雙引號,如圖:
這裡寫圖片描述

{"dev_id":C1088941,"time":"2017-06-01T08:01:08","voltage":215.67,"current":0.94,"speed":0,"status":false,
"temperature":25.3,"humdity":0.52},
{"dev_id":C1088941,"time":"2017-06-01T08:11:02","voltage":217.38,"current":0.69,"speed":0,"status":false,
"temperature":29.3,"humdity":0.48},
{"dev_id":C1088941,"time":"2017-06-01T08:21:08","voltage":211.83,"current":0.35,"speed":0,"status":false,
"temperature":31.9,"humdity":0.45},
{"dev_id":C1088941,"time":"2017-06-01T08:31:02","voltage":215.31,"current":0.40,"speed":0,"status":false,
"temperature":25.3,"humdity":0.45},
{"dev_id":C1088941,"time":"2017-06-01T08:41:07","voltage":211.72,"current":0.12,"speed":0,"status":false,
"temperature":30.4,"humdity":0.50},
{"dev_id":C1088941,"time":"2017-06-01T08:51:05","voltage":214.48,"current":0.36,"speed":0,"status":false,
"temperature":28.3,"humdity":0.46},
{"dev_id":C1088941,"time":"2017-06-01T09:01:05","voltage":217.45,"current":0.97,"speed":0,"status":false,
"temperature":32.9,"humdity":0.52},
{"dev_id":C1088941,"time":"2017-06-01T09:11:01","voltage":215.60,"current":0.83,"speed":0,"status":false,
"temperature":25.3,"humdity":0.48},
{"dev_id":C1088941,"time":"2017-06-01T09:21:07","voltage":215.98,"current":0.74,"speed":0,"status":false,
"temperature":27.2,"humdity":0.52},
{"dev_id":C1088941,"time":"2017-06-01T09:31:04","voltage":210.28,"current":0.81,"speed":0,"status":false,
"temperature":26.9,"humdity":0.48},
{"dev_id":C1088941,"time":"2017-06-01T09:41:03","voltage":216.37,"current":0.03,"speed":0,"status":false,
"temperature":32.2,"humdity":0.54},
{"dev_id":C1088941,"time":"2017-06-01T09:51:06","voltage":219.76,"current":0.03,"speed":0,"status":false,
"temperature":33.4,"humdity":0.51},
{"dev_id":C1088941,"time":"2017-06-01T10:01:06","voltage":216.27,"current":0.52,"speed":0,"status":false,
"temperature":25.3,"humdity":0.45},
{"dev_id":C1088941,"time":"2017-06-01T10:11:02","voltage":212.90,"current":0.38,"speed":0,"status":false,
"temperature":27.4,"humdity":0.47},
{"dev_id":C1088941,"time":"2017-06-01T10:21:08","voltage":216.21,"current":0.40,"speed":0,"status":false,
"temperature":33.2,"humdity":0.51},
{"dev_id":C1088941,"time":"2017-06-01T10:31:03","voltage":210.62,"current":0.48,"speed":0,"status":false,
"temperature":29.6,"humdity":0.51}"

這樣日期全部加雙引號了,就好了!