VisualFoxProをしばらく使用していません。今日、私の元同僚から、名前フィールドから文字以外の文字を削除する方法を尋ねられました。つまり、azとAZのみが許可されています。strstranという関数を使ってそれをしたことを覚えています。azとAZを含む変数を定義する必要がありました。でも今は覚えていません。誰かがこの問題を処理する方法を知っていますか?前もって感謝します。
2920 次
3 に答える
5
CHRTRAN() 関数を使用します。
FUNCTION GetAlphaCharacters
LPARAMETERS tcExpressionSearched
LOCAL lcAllowedCharacters
m.lcAllowedCharacters = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz"
RETURN CHRTRAN(m.tcExpressionSearched, CHRTRAN(m.tcExpressionSearched, m.lcAllowedCharacters, ""), "")
ENDFUNC
于 2013-02-27T11:25:33.870 に答える
1
もう 1 つのオプションは、ISALPHA() を使用することです。これは文字列の一番左の位置のみを調べますが、大文字と小文字は区別されません。
***This should work, but I haven't tested it.
myresults = ""
myvar = "MyText12"
FOR(i = 1 TO LEN(myvar))
IF ISALPHA( SUBSTR(myvar, i, 1) )
myresults = myresults + SUBSTR(myvar, i, 1)
ENDIF
ENDFOR
RETURN myresults
于 2013-02-27T13:51:06.843 に答える