回答
如果你只是想生成可能拼寫錯誤的列表,你可以嘗試像this one的工具。否則,在SAS中,您可以使用類似COMPGED這樣的函數來計算某人輸入的字符串與您希望他們鍵入的字符串之間的相似性度量。如果你的標準兩者「足夠接近」,用你想要的文字替換它們的文字。
下面是一個計算「失業」和各種似是而非的拼寫錯誤之間的廣義編輯距離的例子。
data misspell;
input misspell $16.;
length misspell string $16.;
retain string "unemployment";
GED=compged(misspell, string,'iL');
datalines;
nemployment
uemployment
unmployment
uneployment
unemloyment
unempoyment
unemplyment
unemploment
unemployent
unemploymnt
unemploymet
unemploymen
unemploymenyt
unemploymenty
unemploymenht
unemploymenth
unemploymengt
unemploymentg
unemploymenft
unemploymentf
blahblah
;
proc print data=misspell label;
label GED='Generalized Edit Distance';
var misspell string GED;
run;
謝謝John,我實際上正在尋找所有可能的值作爲sas輸出。我應該更清楚..所以我要尋找一個SAS代碼,會給我輸出:nemployment uemployment unmployment uneployment unemloyment unempoyment unemplyment unemploment unemployent unemploymnt unemploymet 失業的 unemploymenyt unemploymenty unemploymenht unemploymenth unemploymengt unemploymentg unsloymenft unemploymentf .. p – iamjeannie 2011-04-13 14:25:09
我不t h you you you you you want want want want generating generating generating mis mis and and mis what what what what what what what COMP COMP COMP COMP COMP COMP COMP COMP COMP COMP COMP COMP COMP COMP COMP COMP COMP COMP COMP COMP COMP COMP COMP COMP COMP COMP COMP COMP COMP COMP COMP COMP低。 – 2011-04-19 16:26:51
如果您正在尋找一般拼寫檢查器,SAS確實有proc spell
。
這將需要一些調整,以適應您的情況;它非常古老笨重。在這種情況下,它不能很好地工作,但如果您嘗試使用另一個字典,可能會獲得更好的結果? Google搜索會顯示其他示例。
filename name temp lrecl=256;
options caps;
data _null_;
file name;
informat name $256.;
input name &;
put name;
cards;
uemployment
onemploymnet
;
proc spell in=name
dictionary=SASHELP.BASE.NAMES
suggest;
run;
options nocaps;
謝謝里奇,但是我本來應該更清晰。所以我要尋找一個SAS代碼,會給我輸出:nemployment uemployment unmployment uneployment unemloyment unempoyment unemplyment unemploment unemployent unemploymnt unemploymet 失業的 unemploymenyt unemploymenty unemploymenht unemploymenth unemploymengt unemploymentg unemploymenft unemplo ymentf .. – iamjeannie 2011-04-13 14:22:21
基本上你正在嘗試開發基於一些經驗規則文本字符串列表,如一個字母是從字不見了,一個字母錯放到錯誤的地方,是一個字母輸入錯誤,等等。問題是這些規則必須在寫代碼之前用SAS或任何其他語言明確定義(這就是Chris所指的)。如果您的要求降低到這種錯誤字母的情況,那麼這可能是可管理的;否則,評論者是正確的,你可以很容易地創建大量不正確拼寫的名單(畢竟,除「失業」之外的所有組合都構成拼寫錯誤的單詞)。儘管如此,SAS中有很多方法可以完成這種文本操作(rx函數,其他文本字符串函數的組合,宏)。但是,有可能有更好的方法來實現這一點。我會建議一個外部Perl進程來生成一個可以讀入SAS的文本文件,但其他程序員可能有更好的選擇。
- 1. 數組拼圖:生成所有可能的組合
- 2. 從錯誤拼寫的單詞創建可能的正確拼寫列表
- 3. F#拼寫錯誤
- 4. 生成所有可能的替換
- 5. 生成所有可能的組合
- 6. 生成所有可能的配對
- 7. 生成所有可能的分割
- 8. 自定義拼寫檢查生成錯誤
- 9. 如何匹配可能的拼寫錯誤的字符串?
- 10. Python中支持什麼拼寫錯誤/拼寫錯誤?
- 11. 找不到'stackless_installer_c4_win32'的索引頁(可能是拼寫錯誤?)
- 12. ECMAScript 5規範中可能的拼寫錯誤?
- 13. 編寫一個基於字符串的Python方法來生成拼寫錯誤
- 14. 使用點生成所有可能性
- 15. elasticsearch處理拼寫錯誤
- 16. itextsharp PdfTextExtractor拼寫錯誤
- 17. 如何從所有排列生成所有可能的組合?
- 18. PHP回聲錯誤或拼寫錯誤
- 19. android.widget.LinearLayout所有可能的錯誤類型
- 20. 列出所有可能的PHP錯誤
- 21. 爲什麼拼寫錯誤的android:name沒有警告或錯誤?
- 22. 如何拼寫excel中的文本,即使拼寫錯誤
- 23. 錯誤:[$ injector:nomod]模塊'ui.bootstrap'不可用!您拼寫錯誤[012]
- 24. 有沒有可以處理空格插入/刪除拼寫錯誤的lucene/solr拼寫檢查器?
- 25. 。htaccess頁面重寫,拼寫錯誤
- 26. 如何有效地從圖形生成所有可能的生成樹
- 27. 帶有錯誤檢查的生成器模式:是否有可能/可取?
- 28. SAS錯誤消息(致命錯誤:在MISSING拖尾生成期間檢測到代碼生成錯誤)
- 29. 用agrep替換拼寫錯誤的值
- 30. C++暗示錯誤拼寫的單詞
拼寫錯誤的定義是什麼? 「就業」是「失業」的變體嗎?沒有定義,該集合可以是無限的。 – 2011-04-12 21:49:44
夥計。說真的,你應該不時地接受偶爾的答案。 0%是可怕的。 – riwalk 2011-04-12 21:59:28
我正在尋找可幫助我生成有助於壓制客戶拼錯僱主名稱的代碼: – iamjeannie 2011-04-12 23:03:56