日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

Qt工作笔记-QLineEdit用正则限制文本框的输入内容+正则表达式语法

發布時間:2025/3/15 编程问答 19 豆豆
生活随笔 收集整理的這篇文章主要介紹了 Qt工作笔记-QLineEdit用正则限制文本框的输入内容+正则表达式语法 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
原文地址: https://blog.csdn.net/graceland525/article/details/48676071//使用正則表達式限制只能輸入數字 QRegExp rx("[0-9\.]+$");QRegExpValidator *validator = new QRegExpValidator(rx, this);ui->lineEdit->setValidator(validator); //使用正則表達式限制只能輸入IP地址 QRegExp rx = QRegExp("((2[0-4]\\d|25[0-5]|[01]?\\d\\d?)\\.){4}");QRegExpValidator *validator = new QRegExpValidator(rx, this);ui->lineEdit->setValidator(validator);ui->lineEdit->setInputMask("000.000.000.000");

?

簡單說明一下這幾個正則表達式:

^(-?[0]|-?[1-9][0-9]{0,5})(?:\.\d{1,4})?$|(^\t?$)

(^-?180$)|(^-?1[0-7]\d$)|(^-?[1-9]\d$)|(^-?[1-9]$)|^0$

^-?(180|1?[0-7]?\d(\.\d+)?)$

^-?(180|1?[0-7]?\d(\.\d{1,4})?)$

^-?(90|[1-8]?\d(\.\d{1,4})?)$

  • ?式子中開頭的^和結尾的$限定字符串的開始和結尾;
  • ?"-?" 表示一個或0個負號,這里面的問號表示其前面的字符重復0次或1次;
  • ?管道符“|”表示平行分組,比如后三個,表示180或其它形式;
  • ?[1-9] 表示限定數字范圍為1到9,其余類似,如果是有限幾個值,還可以用枚舉的方式,比如限定-255到255時,第一個數字2的限定,應該表達為[1,2],這表示這個位置只允許是1或者2;
  • ?"\d"是一個轉義字符,表示匹配一位數字;
  • ?“\.” 表示匹配小數點;
  • ?"\d+",這里面的+表示其前面的\d重復一次或多次;
  • ?"\d{1,4}",里面的{1,4}表示重復1到4次;
  • 正則表達式語法:

    ?. :匹配任何單個字符。例如正則表達式“b.g”能匹配如下字符串:“big”、“bug”、“b g”,但是不匹配“buug”,“b..g”可以匹配“buug”。?

    ?

    [ ] :匹配括號中的任何一個字符。例如正則表達式“b[aui]g”匹配bug、big和bag,但是不匹配beg、baug。可以在括號中使用連字符“-”來指定字符的區間來簡化表示,例如正則表達式[0-9]可以匹配任何數字字符,這樣正則表達式“a[0-9]c”等價于“a[0123456789]c”就可以匹配“a0c”、“a1c”、“a2c”等字符串;還可以制定多個區間,例如“[A-Za-z]”可以匹配任何大小寫字母,“[A-Za-z0-9]”可以匹配任何的大小寫字母或者數字。

    ?

    ( ) :將 () 之間括起來的表達式定義為“組”(group),并且將匹配這個表達式的字符保存到一個臨時區域,這個元字符在字符串提取的時候非常有用。把一些字符表示為一個整體。改變優先級、定義提取組兩個作用。

    ?

    | :將兩個匹配條件進行邏輯“或”運算。'z|food' 能匹配"z" 或 "food"。'(z|f)ood' 則匹配"zood" 或 "food"。

    ?

    *:匹配0至多個在它之前的子表達式,和通配符*沒關系。例如正則表達式“zo*”能匹配 “z” 、“zo”以及 “zoo”;因此“.*”意味著能夠匹配任意字符串。"z(b|c)*"→zb、zbc、zcb、zccc、zbbbccc。"z(ab)*"能匹配z、zab、zabab(用括號改變優先級)。

    ?

    + :匹配前面的子表達式一次或多次,和*對比(0到多次)。例如正則表達式9+匹配9、99、999等。 “zo+”能匹配 “zo”以及 “zoo” ,不能匹配"z"。

    ?

    ? :匹配前面的子表達式零次或一次。例如,"do(es)?" 可以匹配 "do" 或"does" 。一般用來匹配“可選部分”。

    ?

    {n} :匹配確定的 n 次。"zo{2}"→zoo。例如,“e{2}” 不能匹配“bed”中的“e”,但是能匹配“seed”中的兩個“e”。

    ?

    {n,} :至少匹配n次。例如,“e{2,}”不能匹配“bed”中的“e”,但能匹配 “seeeeeeeed”中的所有“e”。

    ?

    {n,m} :最少匹配 n 次且最多匹配 m 次。“e{1,3}”將匹配“seeeeeeeed”中的前三個“e”。

    ^(shift+6) :匹配一行的開始。例如正則表達式“^regex”能夠匹配字符串“regex我會用”的開始,但是不能匹配“我會用regex”。

    ?

    ^另外一種意思:非!(暫時不用理解)

    ?

    $ :匹配行結束符。例如正則表達式“浮云$” 能夠匹配字符串“一切都是浮云”的末尾,但是不能匹配字符串“浮云呀”

    ?

    ?

    \d:代表一個數字,等同于[0-9]

    \D:代表非數字,等同于[^0-9]

    \s:代表換行符、Tab制表符等空白字符

    \S:代表非空白字符

    \w:匹配字母或數字或下劃線或漢字,即能組成單詞的字符

    \W:非\w ,等同于[^\w]

    d:digital;s:space、w:word。大寫就是“非”

    ?

    Regex.IsMatch("bbbbg","^b.*g$");

    Regex.IsMatch("bg","^b.*g $ ");

    Regex.IsMatch("gege","^b.*g $ ");

    ?

    "^\d{3,4}\-?\d+$"表示被匹配的字符序列應該是由三至四位數字組成,由于長途區號的連字符“-”可有可無,所以這里使用“?”元字符進行說明。由于連字符“-”在正則表達式中有特殊含義(表示范圍,比如[0-9]),所以要對其進行轉義。

    ?

    []括號中的任意字符,\w字母、數字、下劃線,+一到多個。由于.在正則表達式中有特殊的含義,因此對于真正想表達“.”則需要轉移“\.”。先想正則表達式是語言無關的。

    +、*的匹配默認是貪婪(greedy)的:盡可能多的匹配,直到“再貪婪一點兒”其后的匹配模式就沒法匹配為止。

    ?

    在+、*后添加?就變成非貪婪模式(? 的另外一個用途):讓其后的匹配模式盡早的匹配。修改成"我是(.+?)。"

    ?

    ??? 圖片src[^>]*[^/].(?:jpg|bmp|gif)(?:\"|\')

    ??? 中文 ^([\u4e00-\u9fa5]+|[a-zA-Z0-9]+)$

    ??? 網址"\<a.+?href=['""](?!http\:\/\/)(?!mailto\:)(?>foundAnchor>[^'"">]+?)[^>]*?\>"

    ??? 匹配中文字符的正則表達式:[\u4e00-\u9fa5]

    ??? 匹配雙字節字符(包括漢字在內):[^\x00-\xff]

    ??? 匹配空行的正則表達式:\n[\s|]*\r

    ??? 匹配HTML標記的正則表達式:/<(.*)>.*<\/\1>|<(.*) \/>/

    ??? 匹配首尾空格的正則表達式:(^\s*)|(\s*$)(像vbscript那樣的trim函數)

    ??? 匹配Email地址的正則表達式:\w+([-+.]\w+)*@\w+([-.]\w+)*\.\w+([-.]\w+)*

    ??? 匹配網址URL的正則表達式:http://([\w-]+\.)+[\w-]+(/[\w- ./?%&=]*)?

    總結

    以上是生活随笔為你收集整理的Qt工作笔记-QLineEdit用正则限制文本框的输入内容+正则表达式语法的全部內容,希望文章能夠幫你解決所遇到的問題。

    如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。

    主站蜘蛛池模板: 1024福利| 久久精品在线播放 | 精品久久五月天 | 亚洲黄av | 精品一区二区三区精华液 | 男女黄色片 | 岛国精品一区二区 | 国产精品视频麻豆 | 日韩精品电影网 | 亚洲风情亚aⅴ在线发布 | 欧美一区二区人人喊爽 | 日韩一二三区在线观看 | 97超碰福利 | 色婷婷精品国产一区二区三区 | 国产精品爽爽爽 | 中文字幕av高清片 | 亚洲精品中文字幕在线 | 亚洲天堂男人 | 久久99免费视频 | 国产精品18久久久久久久久 | 久久毛片视频 | 色吊丝av中文字幕 | 天堂av8 | 深夜的私人秘书 | 激情六月天| 国产高清一级片 | 亚洲色图清纯唯美 | 男女草逼网站 | a在线视频 | 欧美精品一区二区不卡 | 丝袜美腿一区二区三区 | 欧美人妻精品一区二区三区 | 福利视频网站 | 免费看女生裸体视频 | 那个网站可以看毛片 | 亚洲一级淫片 | 国产欧美在线观看不卡 | 日本高清免费不卡视频 | 男女日日 | 国产主播一区二区 | 国产又爽又黄视频 | 原创少妇半推半就88av | 亚洲久久成人 | 欧洲精品一区二区三区 | 天天曰天天操 | 日本理伦片午夜理伦片 | 波多野结衣视频网站 | 国产精品久久久一区二区 | 国内精品久久久久 | 91精品国产综合久久国产大片 | 国产福利精品在线 | 国产精品主播在线 | www.av免费 | 中文免费av| 成人在线国产视频 | 成人黄色大片 | 午夜av一区二区三区 | 亚洲精品666| 西西大胆午夜视频 | 国产一级二级三级在线观看 | 欧美日韩在线视频播放 | 激情图片在线观看 | 激情综合网五月激情 | www激情| 使劲插视频| 欧美性猛交xxxx久久久 | 久久久久一级片 | 国产极品尤物 | 国产精品熟女久久久久久 | www.久久久久久久 | 亚洲天堂国产 | 久久国产三级 | 欧美 日韩 国产精品 | 视频精品一区 | 污视频网站免费看 | 国产大片一区二区 | 色天使亚洲 | 国产美女无遮挡免费 | 青青草自拍 | 人妻熟女aⅴ一区二区三区汇编 | 香蕉视频黄版 | 91麻豆精品一区二区三区 | 国产中文一区 | 伊人在线 | 精品国偷自产国产一区 | 亚洲综合中文 | 亚洲熟妇一区二区 | 一区二区三区精品视频在线观看 | 最近日韩免费视频 | 91精品在线视频观看 | 久久美女av | 香蕉在线影院 | 婷婷俺来也| 成人乱码一区二区三区av | 男人插入女人下面视频 | 日韩欧美一区二区在线观看 | 欧美性开放视频 | 国产精品久久久久久久久久久久久久久久久久 | 成人午夜激情视频 |