PCDVD數位科技討論區
PCDVD數位科技討論區   註冊 常見問題 標記討論區為已讀

回到   PCDVD數位科技討論區 > 其他群組 > 七嘴八舌異言堂
帳戶
密碼
 

  回應
 
主題工具
邪神
*停權中*
 

加入日期: Jul 2015
文章: 48
程式寫不好才會去背這種題目吧...
基本的優先順序分得出來就好了(+-*/||&&!)

現在都推廣多用括號
直接用運算子不是不行,但是在合作做專案的時候
寫出來的程式不是只有自己在看
     
      
舊 2015-09-26, 03:36 PM #11
回應時引用此文章
邪神離線中  
LR2001
Major Member
 

加入日期: Dec 2000
文章: 125
引用:
作者erai
此職缺是要記憶力強的人?


主要負責維護一組 Parser Generator,由 C 寫的 NFA->DFA、LALR,和 DB Engine 的 index (b-tree+)、cache(hash、LRU)、log manager。

好吧!看來我很機車,當然這個職位的工作也很機車。
 
舊 2015-09-26, 04:19 PM #12
回應時引用此文章
LR2001離線中  
anderson1127
Elite Member
 

加入日期: Jan 2002
文章: 4,032
引用:
作者打工吧魔王大人
某大公司的筆試就是考了regular expression,
我就在想到底有哪個神人能寫這種語意不清的code讓大家來maintain ?
到底有那個做code review 會放這種code進資料庫?


刁的公司總是有刁人的理由,當然也是衰敗的理由。


可否私下告知是那家公司?? 我下次好避開來...
regular expression 本身我並不認為是語意不清的東西 , 因為早年我常寫Perl 分析Log file
就是靠它來進行Log file的分析 , 不論LOG message 如何變化 , 總能夠落入我寫的pattern 裡

只是regular expression本身並不好學 , 我看過的幾本C/C++ 及 Java Programming的書
對這方面的著墨也都不深 , 有提到的也不多!! 目前看過的還是只有那本Perl Programming 駱駝書最為清楚!!

但是,看過的人也都很容易不小心進入夢鄉去了....

那一個章節,還是要一邊搭配實例來驗證比較好,至少不會睡覺去....
__________________
您想買新硬碟嗎? 購買前請務必參考這篇文章,是我的實際經驗

還想讓統一賺你的錢嗎?統一集團成員(能見度高的):
星巴克、家樂福、7-11、無印良品、黑貓宅急便、聖娜多堡、阪急百貨、
康是美、博客來、夢時代、Mister Donut 、Cold Stone 、龜甲萬、
維力33%股權、光泉31%股權、Smile速邁樂、紅心辣椒、台北轉運站(統一企業BOT)

統一LP33膠囊有環保署早已列管的一級管制品: DNOP塑化劑
舊 2015-09-26, 04:36 PM #13
回應時引用此文章
anderson1127離線中  
邪神
*停權中*
 

加入日期: Jul 2015
文章: 48
引用:
作者anderson1127
可否私下告知是那家公司?? 我下次好避開來...


regular expression我都拿google到的來改
只是偶爾會用到而已,完全不會想弄到很精深
舊 2015-09-26, 04:41 PM #14
回應時引用此文章
邪神離線中  
darkangel
Major Member
 
darkangel的大頭照
 

加入日期: Aug 2001
文章: 211
1. 單純不讓 user 用 hex editor 修改的字串加解密,完全不需要用 RE,最簡單的方式就是把字元做 xor 運算,然後把運算完的字元跟第二個字元運算,再把運算完的字元跟第三個字元運算,直到遍歷整個字串(或整個檔案),要解密就是反過來做一次就可以,如果想要做不可逆的編碼就改用 or 即可。
2. 要使用 RE,也不需要自己寫,C 上面早就有很成功的 RE lib,如PCRE...
3. 大公司考 RE 很常見,尤其是以 linux 做開發的公司,像我們公司考題也有 RE (實際上是考 sed, awk 等),畢竟一個 linux 老手不會 RE 實在說不過去。
4. 如果該職位給薪不錯要找高手,那我覺得考運算元優先順序一點也不機車,當然不可能要求全部運算元都寫出來,能寫出個六七成就算過關了,當然更適合的做法是列出來讓考者排順序較佳。

我覺得比較白目的考題像是 a +++++ b, malloc(0),而且還特多公司愛考這種,我要看到就直接不寫,因為這種水準的公司不會是我想去的。

__________________
滿招損 謙受益
舊 2015-09-26, 06:50 PM #15
回應時引用此文章
darkangel離線中  
Adsmt
Golden Member
 
Adsmt的大頭照
 

加入日期: Feb 2004
您的住址: 從來處來
文章: 2,765
Regular Expression不同的工具會有不同的表示及規則,沒有一套標準。所以學起來會很亂。

像是有的用 "." 代表單一任意字元,有的用 "?"

有的 +, * 本身就代表重複字元,有的則只代表「重複」,也就是有的用 "+", 其實和另一種工具的 ".+" 同義。

還有更多複雜的相異處,所以考 Regular Expression 本身就不是一件很聰明的事,因為你不知道應徵者習慣用哪一種。反而有時候會難以判斷對方是真懂還是在亂寫。

真要考也要把使用哪一種規則的 Regular expression 講好,並把規則表附上。
舊 2015-09-26, 10:06 PM #16
回應時引用此文章
Adsmt現在在線上  
oiqmlf
Major Member
 

加入日期: Jun 2010
您的住址: 台灣
文章: 109
引用:
作者Adsmt
43

真要考也要把使用哪一種規則的 Regular expression 講好,並把規則表附上。


常用的人還是會常需要查規則表嗎?我雖然還蠻常用的但只記得幾個常用的符號,其他少用的完全沒記,真的要找麻煩的東西時還是要翻規則表來查查。

還有為什麼微軟的 word 不能支援用 regular expression 來做搜尋,wild card 真的是難用到爆,微軟是有什麼原因不能把regular expression 功能加進 word 嗎?明明很多文字編輯器都有這個功能的呀~
舊 2015-09-26, 10:25 PM #17
回應時引用此文章
oiqmlf離線中  
麵疙瘩
*停權中*
 

加入日期: Jul 2015
文章: 14
考技術應該著重在那些需要幾年培養的部分。 RE會需要很長時間培養嗎 我不清楚


懷念以前考智力測驗 圖像推演等

此文章於 2015-09-26 10:35 PM 被 麵疙瘩 編輯.
舊 2015-09-26, 10:33 PM #18
回應時引用此文章
麵疙瘩離線中  
fpe
Major Member
 

加入日期: Aug 2011
文章: 251
引用:
作者darkangel
1. 單純不讓 user 用 hex editor 修改的字串加解密,完全不需要用 RE,最簡單的方式就是把字元做 xor 運算,然後把運算完的字元跟第二個字元運算,再把運算完的字元跟第三個字元運算,直到遍歷整個字串(或整個檔案),要解密就是反過來做一次就可以,如果想要做不可逆的編碼就改用 or 即可。
...


蠻高招的

此文章於 2015-09-26 10:55 PM 被 fpe 編輯.
舊 2015-09-26, 10:54 PM #19
回應時引用此文章
fpe離線中  
darkangel
Major Member
 
darkangel的大頭照
 

加入日期: Aug 2001
文章: 211
引用:
作者Adsmt
Regular Expression不同的工具會有不同的表示及規則,沒有一套標準。所以學起來會很亂。

像是有的用 "." 代表單一任意字元,有的用 "?"

有的 +, * 本身就代表重複字元,有的則只代表「重複」,也就是有的用 "+", 其實和另一種工具的 ".+" 同義。



re 的 ? 從來都不是匹配 any character,從 posix re, extension, 或是 pcre 到各平台不同實作,所有的 ? 基本上都是 greedy switch,不是 match any character。

有人會說,那我 ls 的 ? 是 match any character 啊,* 是 match any string,很抱歉,那東西叫 glob/wildcard,別把這兩者搞混,真不懂我在講什麼,請在 linux 下執行 man 7 glob

http://man7.org/linux/man-pages/man7/glob.7.html
引用:
Note that wildcard patterns are not regular expressions, although they are a bit similar.


re 在各不同的實作裡,除了版本不同有所擴展之外,基本的 match rule 都是完全一樣。pcre > re ex > re,大都是一層層堆上去的,也就是 perl re 跟 pcre 提供最多功能,re ex 次之,posix re 最少。
至於各不同應用程式之間實作最大的差異主要是在於 \d 這類跳脫字元的定義,所以我寫 re 一直都會避開使用 \d 這類的寫法,而是用 [0-9] 這種標準寫法。

引用:
作者fpe
蠻高招的


因為我寫過啊... 我 20 年前用 x86 asm 寫的編碼程式就這樣寫,因為我不想要讓人用 pctools 改我程式的 copyright 字串,順便上點會當掉 debug/s-ice 的保護...
__________________
滿招損 謙受益

此文章於 2015-09-26 11:20 PM 被 darkangel 編輯.
舊 2015-09-26, 11:16 PM #20
回應時引用此文章
darkangel離線中  


    回應


POPIN
主題工具

發表文章規則
不可以發起新主題
不可以回應主題
不可以上傳附加檔案
不可以編輯您的文章

vB 代碼打開
[IMG]代碼打開
HTML代碼關閉



所有的時間均為GMT +8。 現在的時間是03:15 AM.


vBulletin Version 3.0.1
powered_by_vbulletin 2025。