2011-07-15 43 views
3

我有一些代码使用SetVariable函数,它将第一个参数作为基于传递给此代码的变量名创建的变量名。检查变量名是否有效的函数

我正在寻找一种方法来检查传递给它的字符串是一个有效的变量名称使用函数而不是使用try/catch块来捕获此错误。

我知道有一个函数IsValid但它只检查变量是否有效,而不是如果它是一个有效的变量名称。有没有人有任何建议或自定义代码,他们曾经这样做?

感谢,

汤姆

+2

不知道Coldfusion的不足,但我知道它支持正则表达式。你可以用一个像[A-Za-z] [A-Za-z0-9 _] *(必须以alpha开头并且可能包含任何字母,数字或下划线)来测试变量名称 - >将regexp调整为无论是适合你的。 – Eddy

回答

7

我知道有一个函数的IsValid但如果这只是检查变量 是有效的,而不是它是否是一个合法的变量名

事实上的IsValid( )做你想要的,如果你指定“variableName”作为类型。

<cfoutput>#IsValid("variableName","1")#</cfoutput> 

由于CF中的变量名不能以数字开头,会输出NO。