範例 |
正規表示式範例 |
數字範圍 |
浮點數 |
電子郵件地址 |
IP 地址 |
有效日期 |
數字日期轉換為文字 |
信用卡號碼 |
比對整行 |
刪除重複列 |
程式設計 |
兩個相鄰的字詞 |
陷阱 |
災難性的回溯 |
過多重複 |
拒絕服務 |
讓所有內容都可選 |
重複擷取群組 |
混合 Unicode 和 8 位元 |
本網站上的更多內容 |
簡介 |
正規表示式快速入門 |
正規表示式教學 |
替換字串教學 |
應用程式和語言 |
正規表示式範例 |
正規表示式參考 |
替換字串參考 |
書籍評論 |
可列印 PDF |
關於本網站 |
RSS Feed 和部落格 |
有些使用布林運算子的搜尋工具也有一個稱為「相鄰」的特殊運算子。搜尋「字詞1 相鄰 字詞2」會找出所有在彼此「距離」範圍內出現字詞1 和字詞2 的結果。距離是字詞數。實際數字取決於搜尋工具,而且通常可以設定。
您可以輕鬆地使用適當的正規表示式執行相同的任務。
使用正規表示法,你可以描述幾乎任何文字模式,包括符合兩個相鄰單字的模式。這個模式相對簡單,由三部分組成:第一個單字、一定數量的未指定單字,以及第二個單字。未指定的單字可以用 簡寫字元類別 \w+ 來符合。單字之間的空格和其他字元可以用 \W+ 來符合(這次是大寫的 W)。
完整的正規表示法變成 \bword1\W+(?:\w+\W+){1,6}?word2\b。量詞 {1,6}? 使得正規表示法要求「word1」和「word2」之間至少有一個單字,最多允許六個單字。
如果這些單字也可能以相反的順序出現,我們需要另外指定相反的模式
\b(?:word1\W+(?:\w+\W+){1,6}?word2|word2\W+(?:\w+\W+){1,6}?word1)\b
如果你想從一個單字清單中找出任何兩個單字的配對,你可以使用
\b(word1|word2|word3)(?:\W+\w+){1,6}?\W+(word1|word2|word3)\b
最後的正規表示法也會找出一個單字附近的單字。例如,它會符合 word2 near word2。
| 快速入門 | 教學 | 工具與語言 | 範例 | 參考 | 書籍評論 |
| 正規表示法範例 | 數字範圍 | 浮點數 | 電子郵件地址 | IP 地址 | 有效日期 | 數字日期轉文字 | 信用卡號碼 | 符合完整行 | 刪除重複行 | 程式設計 | 兩個相鄰單字 |
| 災難性回溯 | 過多重複 | 拒絕服務 | 讓所有東西都變成可選 | 重複擷取群組 | 混合 Unicode 和 8 位元 |
頁面網址:https://regular-expressions.dev.org.tw/near.html
頁面最後更新:2021 年 8 月 20 日
網站最後更新:2024 年 3 月 15 日
版權所有 © 2003-2024 Jan Goyvaerts。保留所有權利。