国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 學院 > 開發設計 > 正文

正則表達式——文本定位

2019-11-06 06:17:04
字體:
來源:轉載
供稿:網友

正則表達式——文本定位:

一、應當具備的兩種思維

1、用字符的角度看文本2、區分元字符和特殊符號

*這里說的文本定位并非是定位某些字符,而是定位某些分界

環視(lookaround)——不匹配字符串,僅僅匹配文本中特定位置 - 順序環視: 肯定型順序環視:如(?=/d),當前位置右側是數字則匹配成功 否定型順序環視:如(?!/d),當前位置右側不是數字則匹配成功 - 擬序環視: 肯定型順序環視:如(?<=/d),當前位置左側是數字則匹配成功 否定型順序環視:如(?

二、任務例子

有三個字符串,對其中數字字符串按從右向左每隔三位進行定位

字符串1:I borned in 1980 and I have 1235436405754 dollars 字符串2:I borned in 1980s and I have 1235436405754 dollars 字符串3:I borned in 1980 and I have 1235436405754

正則一:(?<=/d)(?=(/d/d/d)+$) 字符串1定位結果:無法匹配 字符串2定位結果:無法匹配 字符串3定位結果:I borned in 1980 and I have 1,235,436,405,754

【分析】 1、(?<=/d)分界左邊應該有數字 2、?=(/d/d/d)分界右邊應該有三位數字 3、’+$’ 匹配多個(/d/d/d),$確保后邊不存在其他字符 4、字符串中,如果數字字符右側有非數字字符不可以匹配

正則2:(?<=/d)(?=(/d/d/d)+/b) 字符串1定位結果:I borned in 1,980 and I have 1,235,436,405,754 dollars 字符串2定位結果:I borned in 1980s and I have 1,235,436,405,754 dollars 字符串3定位結果:I borned in 1,980 and I have 1,235,436,405,754

【分析】 1、/b匹配單詞的開始或結束,通常英文的單詞是由空格或標點符號或換行為分隔的,但是/b并不代表這些單詞分隔符中的任何一個,只代表一個位置。

正則3:(?<=/d)(?=(/d/d/d)+/s) 字符串1定位結果:I borned in 1,980 and I have 1,235,436,405,754 dollars 字符串2定位結果:I borned in 1980s and I have 1,235,436,405,754 dollars 字符串3定位結果:無法匹配(后邊沒有空格,無法對應/s)


發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 赤壁市| 大同县| 博爱县| 祁东县| 依安县| 临泉县| 海安县| 丹东市| 永胜县| 珲春市| 屯留县| 芒康县| 湘阴县| 宜宾市| 华池县| 务川| 昭苏县| 通河县| 固原市| 隆德县| 文登市| 盐池县| 龙口市| 册亨县| 田林县| 阿拉善右旗| 兴城市| 蒲江县| 青川县| 满城县| 莆田市| 林口县| 揭阳市| 赤壁市| 郎溪县| 大城县| 社会| 安岳县| 兰考县| 二连浩特市| 赞皇县|