1. 程式人生 > >測試新浪微博@小冰 為程式碼機器人的一些方法

測試新浪微博@小冰 為程式碼機器人的一些方法

微軟的微信小冰被騰訊封殺之後,現在移民到了新浪微博; @小冰

這裡貼一些目前有效的用來識別是這是"機器"而不是有正常人類智商的程式碼的方法:

1. 在正常的文字中夾雜其它符號,確保不存在有意義的連續的詞彙,人眼可以分辨,機器不知所云而會露餡:

 比如:    ^^^小v冰^^^--你,,總.算--v開-始--^^不^^知^^道^^我^^在^^說^^啥^^了; [哈哈]

2. 人類對部分詞彙乃至個別整句的顛倒仍有識別能力,照理機器應該更容易,但目前還不行:

所以這句話: "哈哈哇,了崗下要你冰小,飯討要茨蓋爾比,閉倒要司公軟微", 它也不能正確應答,居然

在Excel裡面用VBA程式碼容易實現單元格里面字元的倒序:

  2.1 新建一個空Excel的工作簿;

  2.2 切換到Alt+F11的VBA編輯介面, "插入(insert)">>"模組(module),貼如下程式碼:

Sub ReverseText()
'Updateby20131128
Dim Rng As Range
Dim WorkRng As Range
On Error Resume Next
xTitleId = "KutoolsforExcel"
Set WorkRng = Application.Selection
Set WorkRng = Application.InputBox("Range", xTitleId, WorkRng.Address, Type:=8)
For Each Rng In WorkRng
xValue = Rng.Value
xLen = VBA.Len(xValue)
xOut = ""
For i = 1 To xLen
getChar = VBA.Right(xValue, 1)
xValue = VBA.Left(xValue, xLen - i)
xOut = xOut & getChar
Next
Rng.Value = xOut
Next
End Sub

  2.3 回Excel的工作表中, 在某個單元格(比如D10單元格)輸入一句話, 比如:

"微軟公司要倒閉,比爾蓋茨要討飯,小冰你要下崗,哇哈哈", 然後按Esc鍵退出,

  2.4 再回到Alt+F11的編輯介面, 按F5或者選單方式Run執行,自動跳到工作表

並跳出對話方塊, 選中輸入了文字的D10單元格,回車自動切換到VBA編輯介面, 

然後回到工作表,就會發現文字變成了倒序的如下的形式:

哈哈哇,崗下要你冰小,飯討要茨蓋爾比,閉倒要司公軟微

其它的測試方法其實很多; 可惜微博方式不一定容易操作;

比如把有實際意義的文字(目標文字或訊號)分散在無意義的更多的文字(背景文字或噪聲)之中, 

訊號用突出而一致的顏色顯示, 比如"黑色或紅色",噪聲文字則用背景色比如白色無色格式化

則人可讀文字而機器不能讀. 

方括號裡的文字是我給你的密碼:把【小】訊號【冰】用突出而一致的【你】顏色顯示, 比如"黑色或【有】紅色",噪聲【bug】文字則【你】用背景色【太】比如【差】白色【勁】無色格【了】式化【[哈哈]