看到有人問正則運算式的問題,產生了一個想法,能不能通過我們的原字串和目標字串反推出正則運算式?
實際中經常遇到這種情況,要處理一個字串,自己心里有個想要的目標字串,但是一直寫不對正則運算式,如果有個工具可以反推出正則運算式,那豈不是大大提到了效率!
往各位大佬給個建議或思路,我想做一個這種工具
uj5u.com熱心網友回復:
那不就是“你打手勢我來猜”么既然都是猜,你覺著怎么玩。當然是人工智能
uj5u.com熱心網友回復:
這么說用python寫合適嘍?
uj5u.com熱心網友回復:
不能,通過要求寫正則比較容易,通過正則來判斷這段正則要干嘛就比較困難了,更別說你通過結果和原始字串來判斷正則該怎么寫了uj5u.com熱心網友回復:
有足夠的樣本,可以uj5u.com熱心網友回復:
這個不太可能.. 這東西非常有年頭了.如果有可能 這種東西早就被別人研究出來了..
uj5u.com熱心網友回復:
現在不是人工智能時代了么,理論上是不是可以把不可能變為可能啊?
uj5u.com熱心網友回復:
以前大家都認為機器下圍棋不行,但后來也出來了,這個是不是也可以嘗試啊。
uj5u.com熱心網友回復:
人工智能都是為了商業利益服務,沒有利益的東西,誰來花時間研究啊而且同一種結果,正則寫法也可以不同
uj5u.com熱心網友回復:
能不能根據原字串和目標字串反推正則 是一定能的 但是有沒有成品 就不知道了 這個我沒查過我覺得樓主既然想到了這個 就可以自己試著寫一下 寫出來傳到git上 估計很多人會用
uj5u.com熱心網友回復:
您說的這是當前的現實,沒有利益的東西沒人去做。但有些事情有意義的話還是值得做的,比如那些搞理論數學的那些人,寫的公式沒人給錢,但后來卻被別人用到了其他方面,比如加密等。有點跑題了
uj5u.com熱心網友回復:
嗯,難度很大啊,新手寫不出來,搞了半天只寫了個大小寫的反推。。。
uj5u.com熱心網友回復:
我好多年前 也有這個想法,一直也沒著手去弄,只弄了一個在線測驗的網站:http://www.regexp.cn
確實不好弄,感覺只能靠大量的各種各樣的正則案例資料,用人工智能深度學習的方式應該還可以。
uj5u.com熱心網友回復:
有點意思,你是想搞個正則2.0版本嗎?uj5u.com熱心網友回復:
有點意思,你是想搞個正則2.0版本嗎?
有可能不?
uj5u.com熱心網友回復:
關鍵是正則運算式和匹配的字串不是對應的關系。任何字串,都可以反推一個上限 ^.*$ 。
任何字串,都可以反退一個下限,就是它本身,比如123,可以推出 ^123$
任何兩個字串,都可以推出一個包含最長公共子串的上限,比如 123和234,可以推出 .*23.*
或者推出一個按位的實作,比如 (1|2)(2|3)(3|4)
...
如果你有n個字串也是一樣,完全可以推匯出無窮多個滿足它們的正則運算式
困難在于,你要找到一個最簡的運算式,而這個最簡的運算式要求能把反例過濾掉。
uj5u.com熱心網友回復:
可以,但是反推出來的不是唯一方案。原則上,通過有限集合反推函式都是無窮解。uj5u.com熱心網友回復:
不能,通過要求寫正則比較容易,通過正則來判斷這段正則要干嘛就比較困難了,更別說你通過結果和原始字串來判斷正則該怎么寫了
其中正則比如這個.就夠你推的了哈哈
uj5u.com熱心網友回復:
有足夠的樣本,可以
關鍵是,感覺好難推。比如我只限定正則幾個漢字和幾個.如果反推的話這兩個都可以實作,如果漢字限定少還可以如果是上萬夠嗆
uj5u.com熱心網友回復:
看到有人問正則運算式的問題,產生了一個想法,能不能通過我們的原字串和目標字串反推出正則運算式?
實際中經常遇到這種情況,要處理一個字串,自己心里有個想要的目標字串,但是一直寫不對正則運算式,如果有個工具可以反推出正則運算式,那豈不是大大提到了效率!
往各位大佬給個建議或思路,我想做一個這種工具
那得寫一千行判斷陳述句吧
uj5u.com熱心網友回復:
你把一只猴子放在電腦前邊足夠長時間,它也能寫出你能寫出的每一行代碼。有意義嗎?uj5u.com熱心網友回復:
“能"。這個答案就好像”人不如猴子“,更多是過嘴癮!
uj5u.com熱心網友回復:
說到了“阿爾法狗”下圍棋的問題,不管它算不算是真正的人工智能,最起碼地,你讓阿爾法狗教小學生下圍棋試試看?那個下棋邏輯根本就不是人的思路,而只是機器的思路。那么你說“寫出正則運算式”,機器根本不扯什么人的思路,哪管什么正則?
uj5u.com熱心網友回復:
直覺告訴我,這個應該是可以的。> 通過 目標string 和 源string —— 可以得到 多個 正則運算式。
> 通過 多個測驗樣本,獲取 正則運算式 的 交集。
樓主,我看好你哦。
uj5u.com熱心網友回復:
樓主說的這種想法的工具,N年前就已經存在,只不過沒達到那種完美的程度~~~能生成出一些~~見過一個,不支持中文,如沒中文字符的話,是能出來的~~~流傳的范圍不廣~~就象 VBA工程不可查看 這種工具,你找到現成的并不多~~~~~uj5u.com熱心網友回復:
這種工具N前期網上看過有不成熟的作品,但是反推室友N種結果,這種東西太復雜也沒什么盈利,所以一般人沒這么設計轉載請註明出處,本文鏈接:https://www.uj5u.com/net/89101.html
標籤:C#
上一篇:Datebase First從資料庫獲取主外鍵關系說明注釋
下一篇:關于ODP.NET的小問題
