2017-10-09 6 views
0

cfparam의 속성이 실행되는 순서에 대한 문서가 있습니다. 내가 스프레드 시트에서 오는 값의 패턴을 식별하는 정규식을 사용하고 있지만 불필요한 정규식 처리를 방지하기 위해 먼저 문자열의 길이를 확인하고 싶습니다. 예를 들어 값이 10 자 이상이고 1이 11 인 경우 정규 표현식이 실행되지 않습니다.cfparam 속성 실행 순서

하나의 cfparam을 사용할 수 있습니까? 아니면 두 개를 사용하는 것이 더 좋습니까? 길이를 검사 한 다음 통과하면 정규식을 실행하십시오. 대신 이러한 속성이 작동하는 방법에 끊었하기에, 뭘 하려는지를 바탕으로

<cfparam name="columnValue" type="regex" pattern="^[a-9]+" maxLength="3"> 

<cfparam name="columnValue" type="any" maxLength="3"> 
<cfparam name="columnValue" type="regex" pattern="^[a-9]+"> 
+0

아마도 당신이 읽어야을 실제로 무엇을하는지 보려면 cfparam에 대한 문서를 참조하십시오. –

+0

또는 테스트하고 작동 방법을 확인하십시오. 그건 그렇고, 당신은 또한 정규식을 사용하여 길이를 확인할 수 있습니다. '^ [a-9] {1,3} +' –

답변

0

, 차라리 그냥이 할 거라고 - 훨씬 간단

<!--- get the param value ---> 
<cfparam name="columnValue" default="[if needed]"> 

<!--- if length less than and REFind or REFindNoCase, based on requirements ---> 
<cfif len(columnValue) LT [whatever] AND REFind([reg exp], [your string])> 
    ..... 
</cfif> 
+0

과 비슷한 것을 사용했습니다. 감사. – dutchlab