|
| "Like"?! Fra : Mathias |
Dato : 26-10-03 20:50 |
|
Hej NG.
Je har et noob spørgsmål til alle jer eksperter.
Jeg læste i en kode til kun at tillade tal i en tekst box for et stykke
tids siden, hvor spørgeren havde brugt:
> Private Sub text1_KeyPress(KeyAscii As Integer)
> If KeyAscii >= Asc(" ") And Chr(KeyAscii) Like "[!0123456789,]" Then
> KeyAscii = 7
> End If
> End Sub
"Like"-tingen :), hvad gør den? Er det ligesom ! Or 0 Or 1 Or 2 osv. eller
hvad?
Jeg har testet det med en meget (læg mærke til MEGET delen) simpel metode:
If "1" Like "[!0123]" Then
MsgBox "Jaaah!"
Else
MsgBox "Buuh"
End If
men den siger bare "Buuh" :). Hvordan virker den og hvordan bruger man den?
--
Mathias
| |
Tomas Christiansen (26-10-2003)
| Kommentar Fra : Tomas Christiansen |
Dato : 26-10-03 21:49 |
|
Mathias skrev:
> Jeg læste i en kode til kun at tillade tal i en tekst box...
> > If KeyAscii >= Asc(" ") And Chr(KeyAscii) Like "[!0123456789,]" Then
> > KeyAscii = 7
....
> If "1" Like "[!0123]" Then
> MsgBox "Jaaah!"
> Else
> MsgBox "Buuh"
> End If
>
> men den siger bare "Buuh" :). Hvordan virker den og hvordan bruger man
den?
Jeg ved ikke hvad du havde forventet, når du tager en stump kode, som
reagerer (KeyAscii sættes til 7, som giver et lille bip) når man _ikke_
taster et ciffer?
Lad mig forklare Like's virkemåde - så forstår du hvorfor.
Like forsøger at matche strengen til venstre for Like med udtrykket til
højre for Like.
I udtrykket på højre side, kan man benytte følgende "wildcards":
? Matcher et stk. af hvad-som-helst.
* Macther nul eller flere stk. af hvad-som-helst.
# Matcher ét ciffer (0 til 9).
[] Liste af tegn, som må matche. Et udråbstegn (!) i starten betyder at
alt _andet_ en de angivne tegn matcher. En bindestreg (-) kan bruges
til at angive en rækker af tegn.
Eksempler:
Like "#" Matcher ét ciffer.
Like "[0123456789]" Matcher ét ciffer.
Like "[0-9]" Matcher ét ciffer.
Like "[!0123456789]" Matcher alt andet end cifre.
Like "a[bc]?e" Matcher "a" efterfulgt af "b" eller "c" efterfulgt af et
vilkårligt tegn efterfulgt af "e".
-------
Tomas
| |
Mathias (27-10-2003)
| Kommentar Fra : Mathias |
Dato : 27-10-03 14:31 |
|
"Tomas Christiansen" <toc-01-nospam@blikroer.dk> wrote in
news:bnhbud$q4k$1@news.cybercity.dk:
> Mathias skrev:
>> Jeg læste i en kode til kun at tillade tal i en tekst box...
>> > If KeyAscii >= Asc(" ") And Chr(KeyAscii) Like "[!0123456789,]"
>> > Then
>> > KeyAscii = 7
> ...
>> If "1" Like "[!0123]" Then
>> MsgBox "Jaaah!"
>> Else
>> MsgBox "Buuh"
>> End If
>>
>> men den siger bare "Buuh" :). Hvordan virker den og hvordan bruger
>> man
> den?
> Like forsøger at matche strengen til venstre for Like med udtrykket
> til højre for Like.
> I udtrykket på højre side, kan man benytte følgende "wildcards":
> ? Matcher et stk. af hvad-som-helst.
> * Macther nul eller flere stk. af hvad-som-helst.
> # Matcher ét ciffer (0 til 9).
> [] Liste af tegn, som må matche. Et udråbstegn (!) i starten
> betyder at
> alt _andet_ en de angivne tegn matcher. En bindestreg (-) kan
> bruges til at angive en rækker af tegn.
Dvs. lidt lige som Regular Expressions?
>
> Eksempler:
> Like "#" Matcher ét ciffer.
> Like "[0123456789]" Matcher ét ciffer.
> Like "[0-9]" Matcher ét ciffer.
> Like "[!0123456789]" Matcher alt andet end cifre.
> Like "a[bc]?e" Matcher "a" efterfulgt af "b" eller "c" efterfulgt
> af et
> vilkårligt tegn efterfulgt af "e".
Ja - det må det være.
>
> -------
> Tomas
>
>
--
Mathias
| |
Tomas Christiansen (28-10-2003)
| Kommentar Fra : Tomas Christiansen |
Dato : 28-10-03 11:37 |
|
Mathias skrev:
> Dvs. lidt lige som Regular Expressions?
Vi kunne jo kalde det "fattigmands regulære udtryk"
-------
Tomas
| |
|
|