搜尋此網誌

2011年8月25日 星期四

正規式練習及測試 Regular Expression ^\[ap.*[#] 正規化語法

很多程式或Linux shell會常用到正規式Regular Expression ,但時常不清楚怎麼寫,以下供參考。
這個教學文件很棒http://www.rtfiber.com.tw/~changyj/regex.pdf  (備用文件)

這也是一個不錯的網站:

word vba也可以呼叫正規式比對功能,但先要引用一個項目VBSCript Regular Expressions Library,請參考:
https://stackoverflow.com/questions/25102372/how-to-use-enable-regexp-object-regular-expression-using-vba-macro-in-word

最困擾我的是一串字串中我要同時match倆個pattent,不知道如何寫,查了好久都沒查到,當我看到上述文件regex.pdf中的一句話才了解...太感謝了~~~

撰寫正規式時, 若兩個子RE間沒有長度與內容的限制, 可用『.*』來連接這兩個子RE

我想在字串中找出同時出現apple及19,
Ex: I am apple, i am 19 years old. 這個句子就算找到,但如果是I am apple, i am 20 years old.就不算找到,要怎麼下正規式呢????
這樣就好~~~apple.*19

在Linux中test一下

sh-2.05$ echo 'I am apple, i am 19 years old.' | grep -n 'apple.*19'
1:I am apple, i am 19 years old.  <--表示找到

sh-2.05$ echo 'I am apple, i am 20 years old.' | grep -n 'apple.*19'
sh-2.05$表示沒找到



舊了:
首先請參考這個網站,有很好的教學http://www.rtfiber.com.tw/~changyj/index.html
要如何test正規式會不會work,請參考http://www.rtfiber.com.tw/~changyj/recheck.1/recheck.1.html

沒有留言:

張貼留言