1. 程式人生 > >關於正則表示式的幾篇文章學習

關於正則表示式的幾篇文章學習

螢幕快照 2016-03-02 下午4.38.08.png

總結的好的兩篇文章

第一篇
第二篇
其它擴充套件文章
第一篇
第二篇
正則表示式的所有符號含義

這幾篇文章還沒有仔細看看,先mark,在閱讀這幾篇文章之前也做過類似文字轉化emoji的功能,但不同懂當時的正則表示式為什麼這麼寫,大概讀了這幾篇文章總算有些瞭解。

舉一個簡單的��

比如我想獲取到字串 “速度快放假#啦啦啦#弄啥呢#123#”
所有被#包含的文字,並將其顯示紅色,實現跳轉功能,如下圖功能
��圖.gif

這裡說一下實現,其中點選事件是通過YYText框架實現的

NSString *str = @”速度快放假#啦啦啦#弄啥呢#123#”;

NSMutableAttributedString *attributeStr = [[NSMutableAttributedString alloc] initWithString:str];

YYLabel *lab = [[YYLabel alloc] init];
NSError *error;
NSRegularExpression *regular = [NSRegularExpression regularExpressionWithPattern:@"#(...)#" options:0 error:&error];
if (error||regular==nil) {
    return;
}

NSArray *array = [regular matchesInString:str options:NSMatchingWithTransparentBounds range:NSMakeRange(0, str.length)];
for (NSTextCheckingResult *result in array) {

    NSRange range = result.range;
    [attributeStr yy_setTextHighlightRange:range color:[UIColor redColor] backgroundColor:[UIColor lightGrayColor] tapAction:^(UIView *containerView, NSAttributedString *text, NSRange range, CGRect rect) {
        UIAlertController *alerController = [UIAlertController alertControllerWithTitle:@"提示" message:@"點選了紅色字型" preferredStyle:UIAlertControllerStyleAlert];
        UIAlertAction *action = [UIAlertAction actionWithTitle:@"確定" style:UIAlertActionStyleDefault handler:^(UIAlertAction * _Nonnull action) {

        }];
        [alerController addAction:action];
        [self presentViewController:alerController animated:YES completion:nil];
    }];

}

[lab setAttributedText:attributeStr];
[lab setFrame:CGRectMake(10, 30, 200, 40)];
[self.view addSubview:lab];

螢幕快照 2016-03-02 下午5.08.37.png

如果能夠幫到你,請你打賞支援我的創作(請小喬喝杯飲料��)
©小喬

相關推薦

關於表示式文章學習

總結的好的兩篇文章 第一篇 第二篇 其它擴充套件文章 第一篇 第二篇 正則表示式的所有符號含義 這幾篇文章還沒有仔細看看,先mark,在閱讀這幾篇文章之前也做過類似文字轉化emoji的功能,但不同懂當時的正則表示式為什麼這麼寫,大概讀

python3 學習5 表示式,re模組學習

  正則表示式: 正則表示式有特殊的語法,有些符號需要轉義,所以一般來說使用原始字串模式,也就是r''。 轉自:https://blog.csdn.net/qq_33720683/article/details/81023115 模式 描述

表示式 - 基礎

正則簡介  - 1.使用特殊的符號來做校驗,目標是操作字串。例如:手機號碼、郵箱、身份證的校驗等。 使用正則表示式的優缺點  - 1.使用特殊的符號來做校驗,目標是操作字串。例如:手機號碼、郵箱、身份證的校驗等。  - 2.缺點:雖然能簡化書寫,但是正則

表示式從零開始學習系列(二)

正則表示式學習 -- 實踐     如何讓一個完全沒接觸過正則表示式的人去快速有效的學會正則表示式?這的確是個很難回答的問題。不過我想最好的方式就是把自己當成這麼一個人,然後把自己的學習過程分享出來,想必是個比較不錯的方式。     現在,我將打算去做這麼一件事,希望對

爬蟲之表示式基礎

一 點睛 1 正則表示式工具 http://tool.oschina.net/regex/ 2 測試一下 Hello, my phone number is 029-86432100 and email is [email protected]

python3 表示式,re模組學習

正則表示式:正則表示式有特殊的語法,有些符號需要轉義,所以一般來說使用原始字串模式,也就是r''。模式描述^匹配字串的開頭$匹配字串的末尾。.匹配任意字元,除了換行符,當re.DOTALL標記被指定時,則可以匹配包括換行符的任意字元。[...]用來表示一組字元,單獨列出:[a

python—【爬蟲】學習_2(表示式)_2(practice)

習題來源:hackerrank  Matching Anything But a Newline(.的用法) answer :     regex_pattern = r"^(.{3}\.){3}.{3}$" Matching Digits &am

python—【爬蟲】學習_2(表示式)1.基礎知識

一、簡介 正則表示式本身是一種小型的、高度專業化的程式語言,而在python中,通過內嵌整合re模組,程式媛們可以直接呼叫來實現正則匹配。正則表示式模式被編譯成一系列的位元組碼,然後由用C編寫的匹配引擎執行。 r標識代表後面是正則的語句 二、正則表示式中常用的字元含義 1、普通字元和

python—【爬蟲】學習_2(表示式)3.re模組函式的深入理解

1. re.complie() 作用:如果需要重複地使用某個正則表示式,那麼你可以先將該正則表示式編譯成模式物件。complie()函式就幫助我們將正則表示式,編譯成為一個pattern物件。 2.re.search(pattern ,string) regex.search(strin

如何使用表示式去除一文章兩端的多餘字元(python爬蟲)

原文章格式: text =''' /*<![CDATA[*/(adsbygoogle=window.adsbygoogle||[]).push({});/*]]>*/   Does Neural Imprinting Really Exist? Neural Imp

關於表示式,很棒的一文章~…

目錄 跳過目錄 本文目標 30分鐘內讓你明白正則表示式是什麼,並對它有一些基本的瞭解,讓你可以在自己的程式或網頁裡使用它。 如何使用本教程 最重要的是——請給我30分鐘,如果你沒有使用正則表示式的經驗,請不要試圖在30秒內入門——除非你是超人 :) 別被下面那些複雜的表示式嚇倒,只要跟著我一步

python學習-表示式及re模塊

我只 com 返回 現在 輸出 -1 完全匹配 group clu python中的所有正則表達式函數都在re模塊中。import re導入該模塊。 1,創建正則表達式對象 想re.compile()傳入一個字符串值,表示正則表達式,它將返回一個Regex模式對象。 創建一

Python學習之路 (五)爬蟲(四)表示式爬去名言網

auth Python標準庫 我們 color 匯總 eight code 比較 school 爬蟲的四個主要步驟 明確目標 (要知道你準備在哪個範圍或者網站去搜索) 爬 (將所有的網站的內容全部爬下來) 取 (去掉對我們沒用處的數據) 處理數據(按照我們想要的

從零開始的Python學習Episode 15——表示式

正則表示式   正則表示式(或 RE)是一種小型的、高度專業化的程式語言,(在Python中)它內嵌在Python中,並通過 re 模組實現,所以使用時要匯入re模組。正則表示式模式被編譯成一系列的位元組碼,然後由用 C 編寫的匹配引擎執行。   先說幾個元字元 &nbs

取小數點後面表示式取小數點後面

【轉自】正則表示式取小數點後面幾位 <script type="text/javascript"> onload = function(){     var a = "23.456322";    

Python學習表示式

正則表示式 python 使用正則表示式(re)來進行匹配引擎搜尋 正則表示式是對字串操作的一種邏輯公式,就是用事先定義好的一些特定字元、及這些特定字元的組合,組成一個“規則字串”   關於正則表示式,必須先學會它的元字元 元字元 : ^  $  *  +&

java表示式學習筆記

本人在開發中使用正則表達的場景並不多,偶爾用一下,學習一波,時間久了就又忘記了,放到部落格中,說不定什麼時候就用到了。   一.正則表示式的語法 這個語法表來自:http://www.runoob.com/java/java-regular-expressions.html

python第一表示式的方法簡單歸納

首先先對一些常用的匹配模式進行一下介紹及互相認識一下,當然了可能它認識我,但我絕對還不認識它。。。 ******************************************** 元字元 【 . ^ $ * + ? {} [] \ | () 】 *************

JS學習(六)表示式

//3.使用正則表示式   //建立一個正則表示式有兩種方式,一種是藉助 RegExp 物件來建立,另一種方式是使  用正則表示式字面量來建立   //字面量   //var regex&n

Shell學習表示式-----grep

grep 1. 作用 Linux系統中grep命令是一種強大的文字搜尋工具,它能使用正則表示式搜尋文字,並把匹 配的行打印出來。grep全稱是Global Regular Expression Print,表示全域性正則表示式版本,它的使用許可權是所有使用者。 grep家族包括gre