권장 : ASP 정규 표현 학습 "정규 표현"객체로 다양한 데이터의 합법성을 쉽게 확인할 수 있습니다. 먼저, vbscript의 "정규 표현"객체가 정확히 무엇인지 이해합시다. 먼저 프로그램을 살펴 보겠습니다.
REGEXP 객체는 간단한 정규 표현 지원 기능을 제공합니다.
regexp 객체 사용 :
| 다음은 인용 된 내용입니다. 함수 regexptest (patrn, strng) Dim Regex, Match, Matches '생성 변수. regex = new Regexp '정규 표현식 생성을 설정하십시오. regex.pattern = patrn '세트 모드. regex.ignorecase = true '문자가 사례에 민감한 지 여부를 설정합니다. regex.global = true '글로벌 가용성을 설정합니다. 매치를 설정하십시오 = regex.execute (strng) '검색을 수행하십시오. 매치의 각 경기마다 일치하는 컬렉션을 가로 지릅니다. retstr = retstr & match는 위치에서 발견됩니다 retstr = retstr & match.firstindex &. 일치 가치는 ' retstr = retstr & match.value & '. & vbcrlf 다음 regexptest = retstr 엔드 기능 |
msgbox (regexptest (IS., IS1 IS2 IS3 IS4))
Regexp 객체의 속성
◎ 글로벌 속성
글로벌 속성은 전체 검색 문자열에서 패턴이 모두 첫 번째 또는 첫 번째와 일치하는지 여부를 나타내는 부울 값을 설정하거나 반환합니다.
문법
object.global [= true | 거짓 ]
객체 매개 변수는 항상 regexp 객체입니다. 검색이 전체 문자열에 적용되면 글로벌 속성의 값은 true 값을 가지며 그렇지 않으면 값이 False입니다. 기본 설정이 참입니다.
글로벌 속성 사용 (글로벌 속성에 지정된 값을 변경하고 그 효과를 관찰) :
| 다음은 인용 된 내용입니다. 함수 regexptest (patrn, strng) Dim Regex '변수를 만듭니다. REGEX를 설정하십시오 = 새로운 regexp '표준 표현을 만듭니다. regex.pattern = patrn '세트 모드. regex.ignorecase = true '문자가 사례에 민감한 지 여부를 설정합니다. regex.global = true '전체 자연을 설정하십시오. regexptest = regex.execute (strng) '검색을 수행하십시오. 엔드 기능 |
msgbox (regexptest (IS., IS1 IS2 IS3 IS4))
◎ gnorecase 속성
MEGORECASE 속성은 모드 검색이 사례에 민감한지를 나타내는 부울 값을 설정하거나 반환합니다.
문법
Object.ignorecase [= true | 거짓 ]
객체 매개 변수는 항상 regexp 객체입니다. 검색이 사례에 민감한 경우, 무시 카세 특성은 거짓입니다. 그렇지 않으면 사실입니다. 기본값은 참입니다.
IgnoreCase 속성의 사용법 (IGNORECASE 속성에 지정된 값을 변경하여 효과를 관찰) :
| 다음은 인용 된 내용입니다. 함수 regexptest (patrn, strng) Dim Regex '변수를 만듭니다. regex = new Regexp '정규 표현식 생성을 설정하십시오. regex.pattern = patrn '세트 모드. regex.ignorecase = true 'SET CASE에 민감한 지 여부. regexptest = regex.execute (strng) '검색을 수행하십시오. 엔드 기능 |
msgbox (regexptest (IS., IS1 IS2 IS3 IS4))
pattern 패턴 속성
패턴 속성은 검색중인 정규 표현 패턴을 설정하거나 반환합니다.
문법
Object.Pattern [= SearchString]
패턴 속성의 구문에는 다음 부분이 포함됩니다.
구문 설명 :
필요한 개체. 항상 regexp 객체 변수입니다.
SearchString 선택 사항. 일반 문자열 표현식을 검색합니다. 부분 테이블에 설정된 다양한 정규 표현 문자가 포함될 수 있습니다.
설정
특수 문자와 시퀀스는 정규 표현의 패턴을 작성할 때 사용됩니다. 사용할 수있는 문자와 시퀀스는 아래에 설명되어 있으며 예제가 제공됩니다.
다음 캐릭터를 특별한 캐릭터 또는 문자 적 가치로 표시하십시오. 예를 들어 n은 문자 n과 일치합니다. n 라인이 일치합니다. 시퀀스/일치 반대쪽 (일치).
^ 입력의 시작 위치와 일치합니다.
$ 입력의 끝과 일치합니다.
* 이전 문자를 0 또는 여러 번 일치시킵니다. 예를 들어, Zo*는 Z와 Zoo와 일치 할 수 있습니다.
이전 캐릭터를 한 번 이상 일치시킵니다. 예를 들어, Zo는 동물원과 일치 할 수 있지만 Z는 아닙니다.
? 이전 문자와 일치합니다. 예를 들어, A? ve? 결코 VE와 일치 할 수 있습니다.
. 라인 브레이크 이외의 캐릭터와 일치합니다.
(패턴) 패턴과 일치하고 경기를 기억하십시오. 일치하는 부분 문자열은 항목 [0] ... [n]을 사용하여 결과 일치 컬렉션에서 얻을 수 있습니다. 브래킷 문자 (및)와 일치하려면 (또는)를 사용할 수 있습니다.
x | y는 x 또는 y와 일치합니다. 예를 들어, Z | 음식은 Z 또는 음식과 일치 할 수 있습니다. (z | f) ood는 동물원이나 음식과 일치합니다.
{n} n은 음이 아닌 정수입니다. 정확히 n 번 일치합니다. 예를 들어, o {2}는 Bob에서 O와 일치 할 수 없지만 Fooooood에서 처음 두 O와 일치 할 수 있습니다.
{n,} n은 음이 아닌 정수입니다. 적어도 n 번 일치합니다. 예를 들어, o {2,}는 Bob에서 O와 일치하지 않지만 모두 foooood에서 O와 일치하지 않습니다. o {1,}는 O와 같습니다. o {0,}는 o*와 같습니다.
{n, m} m 및 n은 음이 아닌 정수입니다. 최소 1 회, 최대 m 회의 일치하십시오. 예를 들어, o {1,3}는 Fooooood의 첫 3 개의 OS와 일치합니다. o {0,1}은 O?와 같습니다.
[xyz] 캐릭터 세트. 괄호 안의 캐릭터 중 하나와 일치합니다. 예를 들어, [ABC]는 평원으로 일치합니다.
[^xyz] 부정적인 문자 세트. 이 괄호 안에없는 문자와 일치하십시오. 예를 들어, [^abc]는 p을 평범하게 일치시킬 수 있습니다.
[AZ]는 특정 범위의 문자를 나타냅니다. 지정된 간격 내의 모든 문자와 일치합니다. 예를 들어, [AZ]는 A와 Z 사이의 소문자 알파벳 특성과 일치합니다.
[^mz] 음의 독점 간격. 지정된 간격 내에없는 문자와 일치합니다. 예를 들어, [MZ]는 m과 z 사이에 있지 않은 모든 문자와 일치합니다.
B는 단어의 경계, 즉 단어와 공간 사이의 위치와 일치합니다. 예를 들어, ERB는 ER과 일치하지 않지만 동사에서는 ER과 일치하지 않습니다.
B는 비 단어 경계와 일치합니다. ea*rb는 결코 일찍 귀를 일치시킵니다.
D는 숫자 문자와 일치합니다. [0-9]에 해당합니다.
D는 비 언어 문자와 일치합니다. [^0-9]와 동일합니다.
F는 페이지 브레이크와 일치합니다.
n 라인 브레이크 문자와 일치합니다.
R은 캐리지 리턴 문자와 일치합니다.
S는 [FNRTV]와 동등한 공백, 탭, 페이지 브레이크 등을 포함하여 모든 흰색 문자와 일치합니다.
S는 모든 비 담금 문자와 일치합니다. [^ fnrtv]와 동일합니다.
t는 탭 문자와 일치합니다.
V 수직 탭 문자와 일치합니다.
W는 밑줄을 포함한 모든 단어 문자와 일치합니다. [a-za-z0-9_]에 해당합니다.
W는 비 단어 문자와 일치합니다. [^a-za-z0-9_]에 해당합니다.
Num은 Num과 일치하며 여기서 Num은 양의 정수입니다. 매치를 기억하십시오. 예를 들어, (.) 1은 두 개의 연속 동일한 문자와 일치합니다.
n은 n과 일치하며, 여기서 N은 옥탈 코드 전송 값입니다. 옥탈 코드 전송 값의 길이는 1, 2 또는 3 숫자 여야합니다. 예를 들어 11과 11은 탭과 일치합니다. 011은 01 및 1에 해당합니다. 옥탈 코드 전송 값은 256을 초과하지 않아야합니다. 그렇지 않으면 처음 두 문자 만 표현의 일부로 간주됩니다. 정기적 인 표현식에서 ASCII 코드를 사용할 수 있습니다.
Xn은 n과 일치하며, 여기서 n은 16 진 코드 전송 값입니다. 16 진 코드 전송 값의 길이는 정확히 2 숫자 여야합니다. 예를 들어, x41 일치 A. x041은 x04 및 1과 동일합니다. 일반 표현식에서 ASCII 코드를 사용할 수 있습니다.
패턴 속성 사용 :
| 다음은 인용 된 내용입니다. 함수 regexptest (patrn, strng) Dim Regex '변수를 만듭니다. regex = new Regexp '정규 표현식 생성을 설정하십시오. regex.pattern = patrn '세트 모드. regex.ignorecase = true 'SET CASE에 민감한 지 여부. regexptest = regex.execute (strng) '검색을 수행하십시오. 엔드 기능 |
msgbox (regexptest (IS., IS1 IS2 IS3 IS4))
Regexp 객체의 방법
◎ 방법을 실행하십시오
실행 메소드는 지정된 문자열에서 정규식 검색을 수행합니다.
문법
Object.Execute (String)
구문 부분 설명
필요한 개체. 항상 regexp 객체의 이름입니다.
문자열이 필요합니다. 정규 표현식을 실행할 텍스트 문자열.
설명
정규 표현식 검색의 설계 패턴은 Regexp 객체의 패턴을 통해 설정됩니다.
실행 메소드는 문자열에있는 각 일치 일치 객체를 포함하는 일치 컬렉션을 반환합니다. 일치가 발견되지 않으면 Execute는 빈 매치 컬렉션을 반환합니다.
실행 방법 사용 :
| 다음은 인용 된 내용입니다. 함수 regexptest (patrn, strng) Dim Regex '변수를 만듭니다. regex = new Regexp '정규 표현식 생성을 설정하십시오. regex.pattern = patrn '세트 모드. regex.ignorecase = false 'SET CASE CINTITION. regex.global = true '모든 경기에 대한 검색. regexptest = regex.execute (strng) '검색을 수행하십시오. 엔드 기능 |
msgbox (regexptest (IS., IS1 IS2 IS3 IS4))
method를 교체하십시오
교체 메소드는 정규 표현식 조회에서 발견 된 텍스트를 대체합니다.
문법
Object.replace (String1, String2)
구문 부분 설명
필요한 개체. 항상 regexp 객체의 이름입니다.
String1이 필요합니다. String1은 텍스트 교체를 수행 할 문자열입니다.
String2 필수. String2는 대체 텍스트 문자열입니다.
설명
대체 된 텍스트의 실제 패턴은 Regexp 객체의 패턴 속성을 통해 설정됩니다.
교체 메소드는 regexp.pattern 텍스트가 String2로 대체 된 String1의 사본을 반환합니다. 일치하는 텍스트가 없으면 원래 String1의 사본이 반환됩니다.
eplace 방법의 사용 :
| 다음은 인용 된 내용입니다. 함수 replacetest (PATRN, Replstr) Dim Regex, str1 '은 변수를 만듭니다. str1 = 빠른 갈색 여우가 게으른 개를 뛰어 넘었습니다. regex = new Regexp '정규 표현식 생성을 설정하십시오. regex.pattern = patrn '세트 모드. regex.ignorecase = true 'SET CASE에 민감한 지 여부. replacetest = regex.replace (str1, replstr) ''교체품으로. 엔드 기능 |
msgbox (replacetest (Fox, Cat))
'Fox'를 '고양이'로 바꾸십시오.
; 또한, 교체 방법은 패턴의 하위 표현을 대체합니다. 이전 예제의 함수에 대한 다음 호출은 원래 문자열의 모든 단어 쌍을 대체합니다.
msgbox (replacetext (들) (들), $ 3 $ 2 $ 1) '단어를 바꾸는 단어.
◎ 테스트 방법
테스트 방법은 지정된 문자열에서 정규 표현식 검색을 수행하고 일치 패턴이 발견되는지 여부를 나타내는 부울 값을 반환합니다.
문법
Object.test (String)
구문 부분 설명
필요한 개체. 항상 regexp 객체의 이름입니다.
문자열이 필요합니다. 정규 표현식 검색을 수행하는 텍스트 문자열.
설명
정규 표현식 검색의 실제 패턴은 Regexp 객체의 패턴 속성을 통해 설정됩니다. regexp.global 속성은 테스트 방법에 영향을 미치지 않습니다.
일치하는 패턴이 발견되면 테스트 방법이 true를 반환합니다. 그렇지 않으면 false를 반환합니다.
| 다음은 인용 된 내용입니다. 테스트 방법 사용 : 함수 regexptest (patrn, strng) Dim Regex, retval '변수 생성. regex = new Regexp '정규 표현식 생성을 설정하십시오. regex.pattern = patrn '세트 모드. regex.ignorecase = false '사례에 민감한 지 여부를 설정하십시오. retval = regex.test (strng) '검색 테스트를 수행하십시오. 그렇다면 retval regexptest = 하나 이상의 일치를 찾으십시오. 또 다른 regexptest = 일치가 없습니다. 끝 If 엔드 기능 |
msgbox (regexptest (IS., IS1 IS2 IS3 IS4))
공유 : ASP로 Excel 파일을 출력하는 방법 ASP에서 Excel을 사용하는 한 가지 방법은 Excel 파일을 데이터베이스로 연결하는 것이며 작업은 액세스 데이터베이스 작업과 유사합니다. 그러나이 방법은 항상 유용하지는 않습니다. Excel은 관계형 데이터베이스가 아니어야합니다. 고정 형식의 경우